当前位置: 首页 > news >正文

CentOS8 彻底清除旧MySQL 重装 MySQL8.0

一、前言

很多人安装 MySQL8 遇到:

  • 旧版本卸载不干净
  • mysqld 启动失败
  • 找不到临时密码(无mysqld.log)
  • 密码策略报错 1819
  • 本地能连、远程无法连接

本文为亲自实操、踩坑总结,命令全部可以直接复制执行,零思维负担。

二、环境

  • 系统:CentOS Stream 8 / CentOS 8
  • 数据库:MySQL 8.0 官方原版
  • 方式:yum/dnf 官方源安装

三、第一步:彻底删除旧MySQL(必须做)

1、停止服务

bash
systemctl stop mysqld mariadb
systemctl disable mysqld mariadb

2、批量卸载所有mysql mariadb

bash
dnf remove -y $(rpm -qa | grep -i mysql)
dnf remove -y $(rpm -qa | grep -i mariadb)

3、清除全部残留文件(解决启动失败最大坑)

bash
rm -rf /var/lib/mysql
rm -rf /etc/my.cnf /etc/my.cnf.d
rm -rf /var/log/mysqld.log
rm -rf /usr/local/mysql*
rm -rf /etc/systemd/system/mysqld.service
rm -rf /etc/systemd/system/multi-user.target.wants/mysqld.service
systemctl daemon-reload

4、检查是否清理干净(无输出即为干净)

bash
rpm -qa | grep -i mysql
ps aux | grep mysql

四、第二步:安装 MySQL8.0

1、下载官方源

bash
dnf install -y https://dev.mysql.com/get/mysql80-community-release-el8-9.noarch.rpm

2、禁用系统自带冲突模块

bash
dnf module disable -y mysql

3、安装mysql8.0

bash
dnf install -y mysql-community-server --nogpgcheck

五、第三步:启动数据库

bash
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld

出现active (running)表示启动成功。

六、第四步:获取临时密码(重点!解决找不到log)

CentOS8 默认没有 /var/log/mysqld.log,使用下面命令查看临时密码:

bash
journalctl -u mysqld | grep password

示例返回:

A temporary password is generated for root@localhost:xxxxxx

七、第五步:登录 + 解决密码策略报错 1819

1、登录数据库

bash
mysql -uroot -p

粘贴刚才临时密码(输入不显示,直接回车)

2、复制全部执行(关闭强密码策略,设置简单密码)

sql
set global validate_password.policy=LOW;
set global validate_password.length=4;
set global validate_password.number_count=0;
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;

本次设置密码:123456(适合开发测试)

八、第六步:开启远程连接(Navicat连接必备)

1、放行防火墙3306端口

bash
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload

2、开启root远程权限

bash
mysql -uroot -p123456

sql
use mysql;
update user set host='%' where user='root';
flush privileges;

九、常用命令

bash
systemctl start mysqld #启动
systemctl stop mysqld #停止
systemctl restart mysqld #重启
systemctl status mysqld #状态

十、常见报错解决(踩坑记录)

1、启动失败:Job for mysqld.service failed

原因:旧残留、旧配置冲突。解决:执行本文第三步清除残留。

2、grep: /var/log/mysqld.log: No such file or directory

原因:CentOS8 新版mysql不生成log文件。解决:journalctl -u mysqld | grep password

3、ERROR 1819 密码策略不满足

解决:复制上面我给的四行sql,直接关闭强策略。

十一、总结

这套流程专为重装、报错、清理不干净的用户编写,全程无多余操作,全部命令可无脑复制粘贴。安装完成后:

  • 端口:3306
  • 账号:root
  • 密码:123456
  • 支持远程连接

|(注:文档部分内容可能由 AI 生成)

http://www.jsqmd.com/news/821923/

相关文章:

  • ESP32CAM人脸识别实战:从编译报错到成功注册的完整避坑指南
  • 在 Python 项目中快速接入多模型 API 实现智能对话功能
  • 一键AI短视频生成器:MoneyPrinterTurbo让你10分钟制作专业级视频
  • 3步解锁老Mac新生命:终极兼容性优化指南
  • 2026乐清市黄金回收白银回收铂金回收店铺实力排行榜TOP5; K金+金条+银条+首饰回收靠谱门店及联系方式推荐_转自TXT - 盛世金银回收
  • 2026共青城市黄金回收白银回收铂金回收店铺实力排行榜TOP5; K金+金条+银条+首饰回收靠谱门店及联系方式推荐_转自TXT - 盛世金银回收
  • 如何高效应用思源宋体:设计师的5个专业字体应用技巧
  • Claude Code 用户迁移到 Taotoken 以解决账号与额度限制的实践
  • Azure OpenAI代理网关:无缝兼容官方API,实现生态平滑迁移
  • DOM 实例
  • 从零到一:在VSCode中高效搭建PyQt5开发环境
  • 2026广安市黄金回收白银回收铂金回收店铺实力排行榜TOP5; K金+金条+银条+首饰回收靠谱门店及联系方式推荐_转自TXT - 盛世金银回收
  • 2026乐山市黄金回收白银回收铂金回收店铺实力排行榜TOP5; K金+金条+银条+首饰回收靠谱门店及联系方式推荐_转自TXT - 盛世金银回收
  • TrollInstallerX完整指南:3分钟在iOS设备上安装TrollStore的终极方案
  • 明日方舟游戏素材库:8000+官方资源一站式获取指南
  • 制造企业数字化转型:赤龙ERP完整解决方案(2026版)
  • AI 术语通俗词典:交叉验证法
  • 告别售后工具!用这款MTK万能工具,自己动手搞定手机刷机、备份分区和解包固件
  • 2026广德市黄金回收白银回收铂金回收店铺实力排行榜TOP5; K金+金条+银条+首饰回收靠谱门店及联系方式推荐_转自TXT - 盛世金银回收
  • 观察Taotoken在多模型间自动路由的容灾表现
  • 从零到一:手把手部署openGauss极简版并完成基础运维
  • 2026耒阳市黄金回收白银回收铂金回收店铺实力排行榜TOP5; K金+金条+银条+首饰回收靠谱门店及联系方式推荐_转自TXT - 盛世金银回收
  • 免费开源桌面分区管理工具NoFences:Windows桌面整理的终极解决方案
  • 2026丽江市黄金回收白银回收铂金回收店铺实力排行榜TOP5; K金+金条+银条+首饰回收靠谱门店及联系方式推荐_转自TXT - 盛世金银回收
  • MTK设备安全屏障突破:高级绕过工具深度技术解析
  • Poppins几何字体:免费开源的多语言排版解决方案
  • 别只数个数了!用OVITO的Cluster analysis做缺陷团簇统计,这份保姆级教程带你搞定BCC钨的数据处理与出图
  • 终极指南:如何用FModel免费解锁虚幻引擎游戏的隐藏宝藏
  • Lightweight Charts:高性能金融图表库的架构哲学与技术实现
  • NocoDB企业级数据平台:三步构建现代化数据管理解决方案