准备工作
在开始安装 MySQL 之前,确保系统满足基本要求并完成准备工作,CentOS 7.4 作为稳定的服务器操作系统,是部署 MySQL 的常见选择,以 root 用户或具有 sudo 权限的用户登录系统,确保网络连接正常,以便下载必要的软件包,建议更新系统至最新状态,执行 sudo yum update -y 命令,以修复潜在的安全漏洞和依赖问题,检查系统架构(32 位或 64 位),MySQL 官方提供对应版本的安装包,避免兼容性问题。

添加 MySQL 仓库
MySQL 官方 Yum 仓库提供了最新的稳定版本,推荐优先使用,下载并添加 MySQL 官方仓库配置文件,执行以下命令:
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm -y
安装完成后,可通过 sudo yum repolist enabled "mysql*-community-*" 命令验证仓库是否添加成功,如果输出中包含 "mysql80-community" 等字样,说明配置正确,若需切换 MySQL 版本(如从 8.0 降级到 5.7),可编辑 /etc/yum.repos.d/mysql-community.repo 文件,修改对应版本的 enabled=1 或 enabled=0。
安装 MySQL 服务器
准备工作完成后,即可开始安装 MySQL 服务器,执行以下命令:
sudo yum install mysql-community-server -y
该命令会自动安装 MySQL 服务端、客户端及相关依赖包,安装过程中,Yum 会自动解决依赖关系,并显示进度条,安装完成后,启动 MySQL 服务并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld
可通过 sudo systemctl status mysqld 检查服务状态,若显示 "active (running)",则表示启动成功。

初始安全配置
MySQL 安装后默认包含一些不安全设置,需通过安全脚本进行初始化配置,执行以下命令:
sudo mysql_secure_installation
脚本会引导用户完成以下步骤:
- 设置 root 用户密码:建议使用强密码(包含大小写字母、数字及特殊字符)。
- 移除匿名用户:默认允许匿名登录,需禁用以提升安全性。
- 禁止 root 远程登录:限制 root 用户仅能通过本地连接,增强服务器安全。
- 移除测试数据库:删除默认的测试数据库,避免未授权访问。
- 重新加载权限表:使配置立即生效。
配置 MySQL 远程访问
若需远程连接 MySQL 数据库,需修改配置文件并开放防火墙端口,编辑 /etc/my.cnf 文件,在 [mysqld] 部分添加以下内容:
bind-address = 0.0.0.0
保存后,重启 MySQL 服务使配置生效,开放防火墙的 3306 端口:
sudo firewall-cmd --permanent --add-port=3306/tcp sudo firewall-cmd --reload
登录 MySQL 并创建允许远程访问的用户:

mysql -u root -p CREATE USER 'remote_user'@'%' IDENTIFIED BY 'YourPassword'; GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%'; FLUSH PRIVILEGES; EXIT;
常用管理命令
掌握 MySQL 的基本管理命令有助于日常运维,以下是常用操作:
- 停止/重启服务:
sudo systemctl stop mysqld或sudo systemctl restart mysqld。 - 登录 MySQL:
mysql -u root -p,输入密码后进入命令行界面。 - 查看用户列表:
SELECT User, Host FROM mysql.user;。 - 备份数据库:使用
mysqldump命令,mysqldump -u root -p database_name > backup.sql。 - 恢复数据库:
mysql -u root -p database_name < backup.sql。
常见问题排查
安装过程中可能遇到问题,以下是常见故障及解决方案:
- 依赖冲突:若提示 "Error: Package: mysql-community-server-8.0.25-1.el7.x86_64 (mysql80-community)", 需清理旧版本缓存:
sudo yum clean all后重试。 - 服务启动失败:检查
/var/log/mysqld.log日志文件,常见原因包括配置文件语法错误或端口占用。 - 密码重置:若忘记 root 密码,可通过
sudo systemctl stop mysqld,跳过权限表启动sudo mysqld_safe --skip-grant-tables,然后重置密码。
相关问答 FAQs
问题 1:如何查看 MySQL 的版本信息?
解答:登录 MySQL 后,执行 SELECT VERSION(); 命令,或在命令行中使用 mysql --version 查看版本。
问题 2:如何优化 MySQL 性能?
解答:可通过调整 /etc/my.cnf 中的参数(如 innodb_buffer_pool_size、max_connections)优化性能,同时定期执行 OPTIMIZE TABLE 重建表空间,减少碎片化。