CentOS 7 安装 MySQL 8.0 部署文档
1. 安装 MySQL
-
添加 MySQL Yum 仓库:
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
-
安装 MySQL 服务:
sudo yum install --nogpgcheck mysql-community-server
2. 初始化 MySQL
-
初始化数据库:
mysqld --initialize --user=mysql --lower-case-table-names=1
-
记录 root 密码 :
查看
/var/log/mysqld.log
文件获取自动生成的临时 root 密码。grep "password" /var/log/mysqld.log
3. 修改 /etc/my.cnf
配置文件
-
编辑配置文件:
vi /etc/my.cnf
-
添加配置 :
在
[mysqld]
下添加:lower-case-table-names=1 default-time_zone='+8:00' max_connections=1000 max_connect_errors=1000 default-authentication-plugin=mysql_native_password character-set-server=utf8 sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
在
[client]
和[mysql]
下添加:default-character-set=utf8
4. 启动 MySQL 服务
systemctl start mysqld
5. 修改数据库 root 密码及创建全域 root 用户
-
登录 MySQL :
使用记录的临时密码登录。
mysql -u root -p
-
修改 root 用户密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'QWER1234@';
-
创建全域 root 用户:
CREATE USER 'root'@'%' IDENTIFIED BY 'QWER1234@'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; FLUSH PRIVILEGES;
-
更改权限:
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE user ='root' AND host='%'; FLUSH PRIVILEGES;
6. 配置修改
-
重启 MySQL 服务:
systemctl restart mysqld
-
验证配置 :
使用相应的验证 SQL 语句来确认配置的修改。
7. 更改数据文件存储位置
-
停止 MySQL 服务:
systemctl stop mysqld
-
创建新的数据存储路径:
mkdir -p /home/data/mysql mv /var/lib/mysql/* /home/data/mysql/
-
修改
/etc/my.cnf
配置 :在
[mysqld]
下修改datadir
和socket
路径。datadir=/home/data/mysql socket=/home/data/mysql/mysql.sock
在
[client]
下添加:socket=/home/data/mysql/mysql.sock
-
启动 MySQL 服务:
systemctl start mysqld