HCRM博客

如何在CentOS系统下完成MySQL 5.6安装?

CentOS 安装 MySQL 5.6

一、前言

在 CentOS 上安装 MySQL 5.6 是一个常见的任务,尤其对于需要特定版本进行兼容性测试或老项目维护的情况,本文将详细介绍如何在 CentOS 系统上安装和配置 MySQL 5.6,包括安装前准备、安装步骤、配置优化以及常见问题解决。

如何在CentOS系统下完成MySQL 5.6安装?-图1
(图片来源网络,侵权删除)

二、安装前准备

1. 系统信息检查与更新

确保你的 CentOS 系统是最新的,并且具有必要的软件包,执行以下命令来更新系统:

  • sudo yum update y

2. 检查现有 MySQL 版本

如果系统中已经安装了其他版本的 MySQL,建议先卸载以避免冲突:

  • rpm qa | grep mysql
  • sudo yum remove mysql* y

3. 安装依赖包

MySQL 5.6 需要一些基础库和工具,执行以下命令来安装这些依赖:

如何在CentOS系统下完成MySQL 5.6安装?-图2
(图片来源网络,侵权删除)
  • sudo yum install y libaio libaiodevel perlTimeHiRes curl curldevel zlibdevel openssldevel perl cpio expatdevel gettextdevel perlExtUtilsMakeMaker perlDBDMySQL

三、下载并安装 MySQL 5.6

1. 创建用户和目录

MySQL 需要一个专用用户来运行服务,并且需要一个数据目录来存储数据库文件

  • sudo groupadd mysql
  • sudo useradd r g mysql s /bin/false mysql
  • sudo mkdir /usr/local/mysql
  • sudo mkdir /usr/local/mysql/data
  • sudo chown R mysql:mysql /usr/local/mysql

2. 下载 MySQL 5.6

从 MySQL 官方网站下载所需版本的源码包:

  • cd /tmp
  • wget https://dev.mysql.com/get/Downloads/MySQL5.6/MySQL5.6.49.tar.gz

3. 解压源码包

  • tar zxvf MySQL5.6.49.tar.gz
  • cd MySQL5.6.49

4. 编译和安装 MySQL

如何在CentOS系统下完成MySQL 5.6安装?-图3
(图片来源网络,侵权删除)

执行以下命令进行编译和安装:

  • cmake \
  • DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  • DMYSQL_DATADIR=/usr/local/mysql/data \
  • DSYSCONFDIR=/etc \
  • DWITH_MYISAM_STORAGE_ENGINE=1 \
  • DWITH_INNOBASE_STORAGE_ENGINE=1 \
  • DWITH_MEMORY_STORAGE_ENGINE=1 \
  • DWITH_READLINE=1 \
  • DWITH_PARTITION_STOREGE=1 \
  • DEXTRA_CHARSETS=all \
  • DDEFAULT_CHARSET=utf8 \
  • DDEFAULT_COLLATION=utf8_general_ci \
  • DMYSQL_USER=mysql \
  • DWITH_DEBUG=0 \
  • DWITH_SSL=system
  • make && make install

5. 初始化数据库

使用以下命令初始化 MySQL 数据库:

  • cd /usr/local/mysql
  • sudo scripts/mysql_install_db user=mysql basedir=/usr/local/mysql datadir=/usr/local/mysql/data

6. 设置权限和开机自启动

  • sudo chown R mysql:mysql /usr/local/mysql
  • sudo chown R mysql:mysql /usr/local/mysql/data
  • sudo cp supportfiles/mysql.server /etc/init.d/mysqld
  • sudo chmod +x /etc/init.d/mysqld
  • sudo chkconfig mysqld on

四、配置和优化 MySQL

1. 复制配置文件模板

将默认配置文件复制到/etc 目录下:

  • sudo cp supportfiles/mydefault.cnf /etc/my.cnf

2. 编辑配置文件

根据需求编辑/etc/my.cnf,例如设置字符集、端口等:

  • [client]
  • port = 3306
  • defaultcharacterset=utf8
  • [mysqld]
  • port = 3306
  • charactersetserver = utf8
  • collationserver = utf8_general_ci
  • datadir = /usr/local/mysql/data
  • socket = /usr/local/mysql/mysql.sock
  • user = mysql
  • 根据服务器硬件资源调整以下参数
  • innodb_buffer_pool_size = 1G
  • innodb_log_file_size = 256M
  • max_connections = 1000

3. 启动 MySQL 服务

  • sudo service mysqld start

4. 设置 root 用户密码

首次登录时需要设置 root 用户的密码:

  • sudo /usr/local/mysql/bin/mysqladmin u root password 'new_password'

5. 远程访问配置(可选)

编辑/etc/my.cnf,注释掉绑定地址限制行,或者将其设置为0.0.0.0

  • [mysqld]
  • ...
  • bindaddress = 127.0.0.1 # 取消注释并修改为0.0.0.0以允许远程访问
  • ...

重启 MySQL 服务使配置生效:

  • sudo service mysqld restart

注意:为了安全性,请确保防火墙规则允许 MySQL 端口(默认是3306)的通信:

  • sudo firewallcmd permanent addport=3306/tcp
  • sudo firewallcmd reload

五、常见问答(FAQs)

Q1: 如何更改 MySQL 默认编码?

A1: 在/etc/my.cnf 中添加或修改以下内容:

  • [client]
  • defaultcharacterset=utf8
  • [mysql]
  • defaultcharacterset=utf8
  • [mysqld]
  • charactersetserver=utf8
  • collationserver=utf8_general_ci

然后重启 MySQL:

  • sudo service mysqld restart

Q2: 忘记 root 密码怎么办?

A2: 可以通过跳过授权表的方式重置密码,停止 MySQL 服务,然后在启动时添加skipgranttables 参数:

  • sudo service mysqld stop
  • sudo /usr/local/mysql/bin/mysqld_safe skipgranttables &

进入 MySQL:

  • sudo /usr/local/mysql/bin/mysql u root

选择mysql 数据库并更新root 用户的密码:

  • FLUSH PRIVILEGES;
  • ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
  • \q

停止 MySQL 并重新启动正常模式:

  • sudo service mysqld stop
  • sudo service mysqld start

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/16860.html

分享:
扫描分享到社交APP
上一篇
下一篇