本记录在Centos7下面,重新安装mysql8的全过程;
一、完全卸载 MySQL8
1.1 停止 MySQL 服务 systemctl stop mysqld pkill mysqld1.2 查找并删除所有 MySQL 相关包 # 查找所有 MySQL 相关的 RPM 包 rpm -qa | grep -i mysql# 删除所有 MySQL 包 rpm -qa | grep -i mysql | xargs rpm -e --nodeps# 查找并删除 MariaDB 相关包 rpm -qa | grep -i mariadb rpm -qa | grep -i mariadb | xargs rpm -e --nodeps1.3 彻底清理文件和目录 # 删除 MySQL 配置文件和数据目录 rm -rf /var/lib/mysql rm -rf /etc/my.cnf rm -rf /etc/my.cnf.d rm -rf /var/log/mysqld.log# 删除 MySQL 用户和组 userdel mysql groupdel mysql# 清理临时文件和缓存 rm -rf /tmp/mysql* rm -rf /var/tmp/mysql*1.4 删除 YUM 仓库配置和清理缓存 # 删除 MySQL 仓库文件 rm -rf /etc/yum.repos.d/mysql-community* rm -rf /etc/yum.repos.d/mysql*# 清理 YUM 缓存 yum clean all rm -rf /var/cache/yum
二、重新安装 MySQL 8
2.1 下载并安装 MySQL 仓库# 下载 MySQL 8 仓库配置 wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm # 安装仓库 rpm -ivh mysql80-community-release-el7-7.noarch.rpm2.2 安装 MySQL 8(跳过 GPG 检查) # 安装 MySQL 服务器和客户端(跳过 GPG 验证) yum install mysql-community-server mysql-community-client --nogpgcheck -y2.3 备选安装命令(如果上面失败) # 禁用 GPG 检查并安装 yum --nogpgcheck install mysql-community-server mysql-community-client -y
三、配置和启动 MySQL8
3.1 启动 MySQL 服务 # 启动服务 systemctl start mysqld# 设置开机自启 systemctl enable mysqld# 检查状态 systemctl status mysqld3.2 获取初始密码 # 查看临时 root 密码 grep 'temporary password' /var/log/mysqld.log3.3 安全配置 # 运行安全配置脚本 mysql_secure_installation安全配置步骤:输入上面查到的临时密码设置新密码移除匿名用户 (输入 Y)禁止 root 远程登录 (输入 Y)删除测试数据库 (输入 Y)重新加载权限表 (输入 Y)
四、验证安装MySQL8
4.1 测试连接 # 使用新密码登录 mysql -u root -p4.2 在 MySQL 中执行验证命令 -- 显示所有数据库 SHOW DATABASES;-- 显示 MySQL 版本 SELECT VERSION();-- 退出 MySQL EXIT;4.3 检查版本 mysql --version
五、一键清理和重装脚本
#!/bin/bash echo "=== 开始完全重装 MySQL ==="# 停止服务 echo "停止 MySQL 服务..." systemctl stop mysqld 2>/dev/null pkill mysqld 2>/dev/null# 删除 RPM 包 echo "删除 MySQL 包..." rpm -qa | grep -i mysql | xargs rpm -e --nodeps 2>/dev/null rpm -qa | grep -i mariadb | xargs rpm -e --nodeps 2>/dev/null# 清理文件 echo "清理文件和目录..." rm -rf /var/lib/mysql rm -rf /etc/my.cnf* rm -rf /etc/my.cnf.d rm -rf /var/log/mysqld* rm -rf /tmp/mysql* rm -rf /etc/yum.repos.d/mysql-community*# 清理缓存 yum clean all# 安装仓库 echo "安装 MySQL 仓库..." wget -q https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm rpm -ivh mysql80-community-release-el7-7.noarch.rpm# 安装 MySQL echo "安装 MySQL..." yum install mysql-community-server mysql-community-client --nogpgcheck -y# 启动服务 echo "启动 MySQL..." systemctl start mysqld systemctl enable mysqld# 显示初始密码 echo "=== 安装完成 ===" echo "初始密码:" grep 'temporary password' /var/log/mysqld.log 2>/dev/null || echo "请查看 /var/log/mysqld.log 获取密码"
5.2 执行一键脚本
# 给脚本执行权限
chmod +x reinstall-mysql.sh
# 运行脚本
./reinstall-mysql.sh
六、故障排除
6.1 检查依赖 # 安装可能缺失的依赖 yum install libaio net-tools -y6.2 检查防火墙设置 # 如果需要远程访问,开放 3306 端口 firewall-cmd --add-port=3306/tcp --permanent firewall-cmd --reload6.3 检查 SELinux 状态 # 临时禁用 SELinux setenforce 0# 查看 SELinux 状态 getenforce
七、重要注意事项
数据备份:在执行卸载前,请确保已备份重要数据
密码安全:安装完成后立即修改默认密码
网络连接:确保服务器可以访问互联网以下载安装包
权限问题:如果遇到权限问题,使用 chown 和 chmod 命令调整
服务状态:安装完成后确认 MySQL 服务正常运行
八、验证安装成功的标志
✅ systemctl status mysqld 显示 active (running)
✅ mysql --version 正确显示版本信息
✅ 可以使用 mysql -u root -p 成功登录
✅ 可以执行基本的 SQL 命令