在CentOS系统上安装MySQL是许多开发者和系统管理员的常见需求,MySQL作为一种广泛使用的关系型数据库管理系统,其稳定性和性能使其成为众多应用的首选,本文将详细介绍在CentOS上安装MySQL的步骤,包括环境准备、安装过程、配置优化以及常见问题解决,帮助读者顺利完成部署。

环境准备
在开始安装MySQL之前,确保系统满足基本要求,CentOS 7和CentOS 8是当前主流版本,本文以CentOS 7为例,更新系统软件包列表并安装必要的依赖工具,打开终端,执行以下命令:
sudo yum update -y sudo yum install -y wget
确保系统防火墙允许MySQL的默认端口3306,可以通过以下命令开放端口:
sudo firewall-cmd --permanent --add-port=3306/tcp sudo firewall-cmd --reload
添加MySQL Yum仓库
MySQL官方提供了Yum仓库,方便用户安装最新版本的MySQL,下载并添加MySQL官方Yum仓库配置文件,执行以下命令:
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm -y
安装完成后,验证仓库是否添加成功:
sudo yum repolist enabled | grep ".*\.\(.*\)\..*" | grep ".*MySQL.*"
如果看到类似“mysql80-community/x86_64”的输出,说明仓库已成功添加。
安装MySQL服务器
添加仓库后,即可安装MySQL服务器,执行以下命令:
sudo yum install -y mysql-community-server
安装过程中会提示确认,输入“y”继续,安装完成后,启动MySQL服务并设置开机自启:

sudo systemctl start mysqld sudo systemctl enable mysqld
通过以下命令检查MySQL服务状态:
sudo systemctl status mysqld
如果显示“active (running)”,说明服务已成功启动。
初始化安全配置
MySQL安装完成后,会自动生成一个临时root密码,通过以下命令查看:
sudo grep 'temporary password' /var/log/mysqld.log
使用该临时密码登录MySQL:
mysql -u root -p
登录后,运行安全脚本设置root密码并移除匿名用户等:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword!'; FLUSH PRIVILEGES; QUIT;
运行mysql_secure_installation脚本可以完成更多安全配置,如删除测试用户、禁止远程root登录等。
配置优化
根据实际需求,可以调整MySQL的配置文件,默认配置文件位于/etc/my.cnf,调整最大连接数:

sudo vi /etc/my.cnf
在[mysqld]部分添加:
max_connections = 200
保存后重启MySQL服务:
sudo systemctl restart mysqld
常见问题解决
安装过程中可能会遇到依赖冲突或服务无法启动的问题,如果出现“Public key is not available”错误,可以尝试:
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2025
对于服务启动失败,检查日志文件/var/log/mysqld.log,根据错误信息排查问题。
相关问答FAQs
Q1: 如何修改MySQL的默认字符集?
A1: 编辑/etc/my.cnf文件,在[mysqld]部分添加character-set-server=utf8mb4,并重启MySQL服务。
Q2: 忘记MySQL root密码怎么办?
A2: 停止MySQL服务,以安全模式启动跳过权限表,然后重置密码,具体步骤为:sudo systemctl stop mysqld,sudo mysqld_safe --skip-grant-tables &,登录后执行ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';,最后重启服务。