在Centos 7上安装MySQL 5.7是一个相对直接的过程,但需要一定的步骤来确保正确安装和配置,下面我将详细介绍如何在CentOS 7系统上安装MySQL 5.7,并提供一些常见问题的解答。
一、更新YUM源
在开始之前,首先确保你的系统软件包是最新的:

- sudo yum update y
二、添加MySQL Yum仓库
1、安装wget工具(如果尚未安装):
- sudo yum install y wget
2、下载MySQL Yum仓库包:
- wget https://dev.mysql.com/get/mysql57communityreleaseel711.noarch.rpm
3、安装MySQL Yum仓库包:
- sudo rpm ivh mysql57communityreleaseel711.noarch.rpm
4、清理YUM缓存并确认仓库已添加:
- sudo yum clean all
- sudo yum repolist enabled | grep "mysql.*community.*"
三、安装MySQL 5.7
1、安装MySQL服务器:
- sudo yum install y mysqlcommunityserver
2、启动MySQL服务:

- sudo systemctl start mysqld
3、查看MySQL服务状态:
- sudo systemctl status mysqld
4、设置MySQL开机自启:
- sudo systemctl enable mysqld
四、MySQL初始化设置
1、获取临时密码:
- sudo grep 'temporary password' /var/log/mysqld.log
2、使用临时密码登录MySQL:
- mysql u root p
3、修改root用户密码(密码需包含大写字母、小写字母、数字、标点符号,且长度至少为8):
- ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
4、退出MySQL命令行客户端:

- exit;
五、配置远程连接(可选)
1、登录MySQL:
- mysql u root p
2、授予root用户远程访问权限:
- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourNewPassword' WITH GRANT OPTION;
- FLUSH PRIVILEGES;
3、配置防火墙以允许MySQL端口(默认3306):
- firewallcmd zone=public addport=3306/tcp permanent
- firewallcmd reload
六、字符集配置(可选)
1、编辑my.cnf文件:
- sudo vi /etc/my.cnf
2、添加或修改以下配置:
- [client]
- defaultcharacterset=utf8
- [mysqld]
- charactersetserver=utf8
- collationserver=utf8_general_ci
3、重启MySQL服务:
- sudo systemctl restart mysqld
通过以上步骤,你应该能够在CentOS 7上成功安装并配置MySQL 5.7,如果在安装过程中遇到任何问题,可以参考以下FAQ部分。
八、FAQs
Q1: 如何更改MySQL的默认端口号?
A1: 你可以通过修改/etc/my.cnf
文件中的[mysqld]
部分来更改MySQL的默认端口号,要将端口号更改为3307,请添加或修改以下行:
- [mysqld]
- port=3307
然后重启MySQL服务:
- sudo systemctl restart mysqld
Q2: 如果忘记MySQL root用户的密码怎么办?
A2: 你可以通过跳过授权表的方式来重置root用户的密码,步骤如下:
1、停止MySQL服务:
- sudo systemctl stop mysqld
2、使用跳过授权表的方式启动MySQL:
- sudo mysqld_safe skipgranttables &
3、登录MySQL(无需密码):
- mysql u root
4、修改root用户密码:
- FLUSH PRIVILEGES;
- ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123!';
5、退出MySQL并重启服务:
- exit;
- sudo systemctl restart mysqld
注意:这种方法仅用于紧急情况下的密码恢复,平时应妥善保管好密码。