
作为后端开发或数据库学习的起点,MySQL 环境搭建往往是第一道坎。不同 Linux 发行版(如 CentOS 7、Ubuntu)的安装路径差异较大,加之系统预装的 MariaDB 干扰、密码策略限制及编码问题,新手容易踩坑。本文以资深工程师的视角,拆解 CentOS 7 和 Ubuntu 下的完整部署流程,命令可直接复制,重点解决配置冲突与优化问题。
前置准备:处理 MariaDB 冲突
MySQL 被 Oracle 收购后,CentOS 7 和 Ubuntu 常默认预装 MariaDB。虽然语法兼容,但底层实现不同,会与官方 MySQL 产生端口和配置文件冲突。因此,安装前彻底卸载 MariaDB 是成功的关键。
建议全程使用 root 用户操作(普通用户需加 sudo),初期学习阶段直接用 root 管理更便捷,熟悉后再创建普通用户。
CentOS 7 系统下 MySQL 完整安装配置
本次演示基于 MySQL 5.7 版本(兼容性强),通过官方 YUM 源安装。流程涵盖:卸载冲突环境→配置 YUM 源→安装服务→初始化→优化设置。
1. 卸载系统自带 MariaDB / 旧版 MySQL
首先检查并停止正在运行的 MariaDB 进程,避免卸载时资源占用报错:
# 检查 MariaDB 进程
ps ajx | grep mariadb
# 停止服务
systemctl stop mariadb.service
# 再次确认无相关进程
ps ajx | grep mariadb
接着查询并卸载相关安装包。若有多个包,建议使用通配符批量清理:
# 查询已安装的包
rpm -qa | grep mariadb
rpm -qa | grep mysql
# 卸载 MariaDB
sudo yum remove mariadb* mysql* -y
注意: 卸载前建议备份配置文件和数据目录,防止误删重要内容:
cp /etc/my.cnf /etc/my.cnf.bak
cp -r /var/lib/mysql /var/lib/mysql.bak
2. 配置 MySQL 官方 YUM 源
CentOS 7 默认源不含 MySQL 官方包,需手动添加。下载与系统版本匹配的 YUM 源包至关重要。
# 查看系统版本
cat /etc/redhat-release
# 输出示例:CentOS Linux release 7.8.2003 (Core)
# 下载 MySQL 5.7 YUM 源包
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
# 安装 YUM 源
sudo rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
安装后会在 /etc/yum.repos.d/ 生成相关 repo 文件,验证如下:


