如何清理全部已安装的mysql,之后重新安装mysql 8

由于系统存在多个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官方仓库安装。

  1. 添加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
  2. 安装MySQL服务器

    bash 复制代码
    yum install -y mysql-community-server
  3. 启动MySQL并设置开机自启

    bash 复制代码
    systemctl start mysqld
    systemctl enable mysqld
  4. 获取并修改初始密码

    bash 复制代码
    # 从日志中获取临时密码
    grep 'temporary password' /var/log/mysqld.log
    # 使用获取的密码登录
    mysql -u root -p

    登录后,在MySQL提示符下执行以下命令修改密码(请将YourNewPassword123!替换为你的强密码):

    sql 复制代码
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword123!';
    FLUSH PRIVILEGES;
    EXIT;

💡 注意事项

  • 重要 :第二步(配置yum源)是后续成功安装的基础,不可跳过。否则安装mysql-community-server时会因缺少依赖而失败。
  • 安全性 :出于安全考虑,安装后建议运行 mysql_secure_installation 脚本进行安全加固。
相关推荐
张洛闻Eren4 小时前
MySQL 维护稳定系统【MySQL第二课】
linux·数据库·mysql·云原生
布莱克6055 小时前
理解索引:从概念到实践
数据库·mysql
g10565591398 小时前
LAMP博客平台Wordpress实战
android·mysql·nginx·php
我不是疯子是傻子8 小时前
Qt CAN通信周期发送抖动?实测定时器精度校准与时间戳补偿方案
开发语言·数据库·qt
这个DBA有点耶9 小时前
数据库迁移怎么做到“零翻车“:金仓 KDMS/KDTS/KFS 工具链实测
数据库·架构·dba
2501_9378609410 小时前
MySQL联合查询(多表查询)
数据库·mysql
名字还没想好☜10 小时前
Next.js 用 Server Components 直连数据库:去掉 API 层的边界,和三条别踩的安全红线
前端·javascript·数据库·安全·react·next.js
迷迭香yy10 小时前
行业板块轮动因子实战从板块资金到因子建模的本地化Python全流程
数据库·人工智能·python
SelectDB11 小时前
抖音集团 实时数据仓库:Apache Doris / SelectDB 的技术能力与实践
数据库
SelectDB11 小时前
网易 日志与时序数据分析:Apache Doris / SelectDB 的技术能力与实践
数据库