前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL官方源从8.0.3直接yum升级到8.0.4后无法启动

MySQL官方源从8.0.3直接yum升级到8.0.4后无法启动

作者头像
星哥玩云
发布2022-08-16 14:16:05
4940
发布2022-08-16 14:16:05
举报
文章被收录于专栏:开源部署开源部署

服务器环境:CentOS 7.4.14

问题:MySQL无法正常启动

查看日志

2018-02-23T02:10:08.371209Z 0 [System] [MY-010116] /usr/sbin/mysqld (mysqld 8.0.4-rc-log) starting as process 27702 ... 2018-02-23T02:10:08.737713Z 1 [ERROR] [MY-011096] No data dictionary version number found. 2018-02-23T02:10:08.737989Z 0 [ERROR] [MY-010020] Data Dictionary initialization failed. 2018-02-23T02:10:08.738038Z 0 [ERROR] [MY-010119] Aborting

后来发现,升级后默认启用了caching_sha2_password身份认证机制,以前的数据是不能直接运行的。

只能先恢复原版本,将数据从原版本导出,重新导入使用,或再升级导入。

一、卸载MySQL8.0.4

备份数据

mv /var/lib/{mysql,mysql.bak} chown -R mysql:mysql /var/lib/mysql.bak chmod 755 -R  /var/lib/mysql.bak

直接yum卸载

rpm -qa|grep '^mysql'

然后将查询出的8.0.4的包全部yum卸载

二、安装MySQL8.0.3

从官方下载 8.0.3

下载打包版mysql-8.0.3-0.1.rc.el7.x86_64.rpm-bundle.tar

解压

tar -xvf mysql-8.0.3-0.1.rc.el7.x86_64.rpm-bundle.tar

然后依次安装common、libs、client、server

rpm -ivh mysql-community-common-8.0.3-0.1.rc.el7.x86_64.rpm rpm -ivh mysql-community-libs-8.0.3-0.1.rc.el7.x86_64.rpm rpm -ivh mysql-community-client-8.0.3-0.1.rc.el7.x86_64.rpm rpm -ivh mysql-community-server-8.0.3-0.1.rc.el7.x86_64.rpm

启动mysql

systemctl start msyqld.service

此时/var/lib/重新生成了一个新的mysql文件夹

三、数据导出

修改/etc/my.cnf指向旧数据

[mysqld] innodb_force_recovery = 6 datadir=/var/lib/mysql.bak

Forcing InnoDB Recovery提供了6个等级的修复模式 innodb_force_recovery 参考: https://www.linuxidc.com/Linux/2018-02/151049.htm

全库导出: mysqldump -uroot -p --all-databases > /home/sqlfile.sql

四、数据恢复

修改/etc/my.cnf数据路径,去掉修复模式,修复模式下不可写

[mysqld] datadir=/var/lib/mysql

查看临时密码

[root@soft]# cat /var/log/mysqld.log|grep password 2018-02-23T08:06:36.785974Z 5 [Note] A temporary password is generated for root@localhost: Leyk2qO_75ER

用临时密码登录mysql,修改密码

放弃升级,直接导入数据

mysql -uroot -p

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'abcdef@' WITH GRANT OPTION; mysql>flush privileges; mysql>source /home/sqlfile.sql;

重启后,一切正常。升级前一定要备份,一定要经常备份。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档