由于系统存在多个MySQL安装且官方源失效,彻底清理后重新安装是合理的选择。
整个过程分为三步:彻底卸载旧版本 -> 配置可用yum源 -> 安装MySQL 8。
🔍 第一步:彻底卸载MySQL
请按顺序执行以下命令,确保所有相关文件被清除。所有操作均需要在root权限下进行。
| 步骤 | 命令 | 作用说明 |
|---|---|---|
| 1. 停止服务 | systemctl stop mysqld 2>/dev/null |
停止正在运行的MySQL服务。 |
| 2. 移除安装包 | yum remove -y mysql-common mysql-community-* |
批量移除通过yum安装的MySQL相关包。 |
| 3. 检查残留 | `rpm -qa | grep -i mysql` |
| 4. 强制移除 | rpm -ev --nodeps <包名> |
如果上一步有输出,用此命令强制删除每个包。 |
| 5. 清理残留文件 | find / -name mysql |
关键步骤:查找所有残留的MySQL目录和文件。 |
| 6. 删除找到的目录 | rm -rf <上一步找到的路径> |
逐一手动删除找到的目录,常见目录 包括:/var/lib/mysql, /etc/my.cnf, /usr/local/mysql等。 |
| 7. 删除配置文件 | rm -rf /etc/my.cnf* |
删除主配置文件。 |
| 8. 删除日志文件 | rm -rf /var/log/mysqld.log |
清理旧日志。 |
| 9. 最终确认 | `rpm -qa | grep -i mysql` |
🔧 第二步:配置可用的Yum源(关键)
由于CentOS 7官方源已停止维护,直接安装会失败。在安装MySQL前,必须先配置一个可用的替代源。请执行以下命令,将系统yum源替换为阿里云的Vault存档源:
bash
# 1. 备份现有yum源配置文件
mkdir -p /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/ 2>/dev/null
# 2. 下载阿里云为CentOS 7提供的存档源配置文件
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-7.9.2009.repo
# 3. 清理并重建缓存
yum clean all
yum makecache
📦 第三步:安装并配置MySQL 8.0
系统源配置好后,即可从MySQL官方仓库安装。
-
添加MySQL官方Yum仓库
bash# 下载并安装MySQL仓库配置包 wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm rpm -Uvh mysql80-community-release-el7-7.noarch.rpm -
安装MySQL服务器
bashyum install -y mysql-community-server -
启动MySQL并设置开机自启
bashsystemctl start mysqld systemctl enable mysqld -
获取并修改初始密码
bash# 从日志中获取临时密码 grep 'temporary password' /var/log/mysqld.log # 使用获取的密码登录 mysql -u root -p登录后,在MySQL提示符下执行以下命令修改密码(请将
YourNewPassword123!替换为你的强密码):sqlALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword123!'; FLUSH PRIVILEGES; EXIT;
💡 注意事项
- 重要 :第二步(配置yum源)是后续成功安装的基础,不可跳过。否则安装
mysql-community-server时会因缺少依赖而失败。 - 安全性 :出于安全考虑,安装后建议运行
mysql_secure_installation脚本进行安全加固。