MySQL从8.3.0升级到8.4.0遇到的坑点

升级MySQL 本章介绍升级MySQL安装的步骤。升级是一个常见的过程,当您在同一MySQL版本系列中获取bug修复或主要MySQL版本之间的重要功能时。您首先在一些测试系统上执行此过程以确保一切顺利进行,然后在生产系统上执行此过程。在下面的讨论中,必须使用具有管理权限的MySQL帐户运行的MySQL命令包括命令行上的-u root,以指定MySQLroot用户。需要root密码的命令也包括-p选项。因为-p后面没有选项值,所以此类命令会提示输入密码。在提示时键入密码,然后按Enter。 阅读详情
AI摘要

本文针对公司MySQL出现的安全漏洞,如CVE-2024-0727等,提出了解决方案:升级到最新版本,并详细记录了从8.3.0到8.4.0的升级过程及解决身份验证插件导致的启动问题。

前言

由于公司安全扫描,发现MySQL存在一些漏洞,比如

Oracle MySQL 安全漏洞(CVE-2024-0727)
Oracle MySQL 安全漏洞(CVE-2024-21047)
Oracle MySQL 安全漏洞(CVE-2024-21069)
Oracle MySQL 安全漏洞(CVE-2023-5678)
…
在这里插入图片描述

原因

MySQL版本的问题,需要升级到最新版本

方案

1、升级到最新版本

参考centos7 MySQL 升级8.0.33

2、升级遇到的坑点

按照上面步骤升级,从8.3.0升级到8.4.0,由于从MySQL 8.4.0开始,默认情况下不再启用已弃用的 mysql_native_password 身份验证插件,因此在启动时报错,报错内容如下

[root mysql]# systemctl restart mysqld.service
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

查看日志发现就是身份认证错误
在这里插入图片描述

2.1 解决方案

参考MySQL8.0就地升级到MySQL8.4.0
简单来说就是修改mysqlId文件,注释掉default-authentication-plugin=mysql_native_password,新增mysql_native_password=ON

# vim /etc/my.cnf

在这里插入图片描述

CVE-2024-21096:MySQLDump提权漏洞分析 根据以上的漏洞原理,可知利用点是在MySQL的服务版本信息中,在服务版本信息中注入恶意代码之后,包含服务版本信息的SQL文件被MySQL执行后,便可以执行恶意代码。当然,除了手动编译MySQL之外,也可以使用高交互的MySQL蜜罐项目进行更简单的配置和修改,比如使用mysql-mimic项目,该项目是用 Python编写的轻量级项目,它旨在模拟MySQL数据库的行为,它可以在不实际运行MySQL数据库的情况下,模拟MySQL的协议和行为,常用来做无MySQL实际环境下MySQL测试。 阅读详情

相关推荐

MySQL和MySQL驱动mysql-connector-java升级到8.0.X版本

目录 一、MySQL升级到8.0.X版本 1、升级的原因及MySQL8.0版本新特性 2、下载MySQL 3、备份数据 4、卸载原版本MySQL 5、安装下载的新版本。 6、MySQL升级后的兼容性问题 二、升级MySQL驱动mysql-connector-java升级到8.0.X版本 1、为什么要升级驱动版本 2、升级版本 3、修改配置 4、mysql-connector...

AOBO516的专栏 5万+

MySQL8.0就地升级到MySQL8.4.0

升级需求:将8.0.35升级到8.4.0,以In-Place方式直接升级到MySQL8.4.0。数据库版本操作系统版本原版本8.0.35新版本8.4.0关闭现有版本MySQL,将二进制或包替换成新版本并在现有数据目录上启动MySQL并执行升级任务的方式,称为in-place升级。

qq961573863的博客 9559

从MySQL5.7平滑升级到MySQL8.0的最佳实践分享

从MySQL5.7平滑升级到MySQL8.0的最佳实践分享

虫虫的博客 1万+

mysql 版本升级 8.0.24升级到 8.0.34

常见升级场景:支持从Mysql 5.7 升级到 mysql 8.0 并且原版本和新版本都要是GA版本,GA版本就是正式发布版。其中的mysql 5.0、5.1、5.5、5.6、5.7 、8.0都是某个系列版本,在这个系列版本下分为很多小版本,比如mysql 5.7系列版本分为5.7.9、5.7.10等。mysql版本系列分为:mysql 5.0.x、mysql 5.1.x、mysql 5.5.x、mysql 5.6.x\、mysql 5.7.x、mysql 8.0.x,使用mysqldump备份数据。

OceanWaves1993的博客 5037

警惕参数变化,MySQL 8.0 升级避免再次踩坑

MySQL 8.0新特性专栏目录 我们知道MySQL 8.0相对于MySQL 5.7加入了很多新特性,在功能和安全性上做了很多的优化和调整,这就不可避免地会修改一些参数或者函数。**我们现有业务数据从MySQL 5.7及之前的版本升级到8.0,需要特别警惕这些参数的变化,这些变化可能会导致业务行为发生一些意料之外的结果!!!** 最近MySQL 8.0 升级的过程中,我梳理了一些业务可能用到的、重要的参数变化,包括一些MySQL 8.0中已经废弃的参数和部分常见参数默认值的变化。

真水无香,大象无形,做本分的自己,记录技术点滴 9061

刚升级到MySQL8.0就凉凉,是时候准备再次重启升级了

2) 新增group_replication_preemptive_garbage_collection(单主模式预垃圾回收)和group_replication_preemptive_garbage_collection_rows_threshold(触发阈值)专用服务器自动配置:当innodb_dedicated_server=ON时,innodb_redo_log_capacity的计算从基于内存改为基于CPU,且不再改变innodb_flush_metho。下面总结几个比较常见的已弃用参数及命令。

gjc592的博客 1402

MySQL 升级到8.4版本的详细指南

本指南详细介绍了将 MySQL 升级到 8.4 版本的完整流程、注意事项和操作方法。

huanhuanzhou blog 3833

MySQL 8.4.0 LTS升级实战:从5.7到8.4的完整迁移指南(附避坑清单)

本文详细介绍了从MySQL 5.7升级到8.4.0 LTS的完整迁移指南,包括前期准备、分阶段升级路径设计、权限与安全配置迁移、性能调优及回滚方案。特别强调了8.4.0作为长期支持版本(LTS)的新特性和优化点,帮助用户顺利完成升级并提升数据库性能。

android的专栏 1037

mysql5.6-8.0升级

mysql 5.6-8.0升级过程

qq_60891094的博客 3337

MySQL 8.4.0 LTS升级实战:从5.7到8.0再到8.4的完整避坑指南

本文详细介绍了MySQL 8.4.0 LTS升级的完整避坑指南,从5.7到8.0再到8.4的升级路径中的技术细节与实战策略。重点包括升级前的兼容性验证、备份策略、硬件资源评估,以及升级过程中的语法兼容性修复、性能基准测试和权限系统调整,帮助用户顺利完成数据库升级并优化性能。

weixin_29288313的博客 521

MySQL超级简单的平滑升级(小版本)

只适合版本跨越较小的,如果从5到8这种不支持现有版本8.3.0,需升级到8.4.0。

qq_34173687的博客 2343

关于mysql8.0相关的升级

不知不觉,MySQL8.0已经有好多个GA小版本了。目前互联网上也有很多关于MySQL8.0的内容了,MySQL8.0版本基本已到稳定期,相信很多小伙伴已经在接触8.0了。本篇文章主要介绍从5.7升级到8.0版本的过程及注意事项,有想做版本升级的小伙伴可以参考下。

jslzcydd的博客 2235

mysql及postgresql漏洞修复包

mysql-connector-java-8.0.19版本修复包:mysql-connector-java-8.0.27.jar postgresql--42.1.4版本修复包:postgresql-42.2.26.jar

干货分享|MySQL5.7升级MySQL8.0的亲测详解

事出必有因,在这个月的某个项目中,我们面临了一项重要任务,即每年一次的等保测评整改。这次测评的重点是Mysql的一些高危漏洞,客户要求我们无论如何必须解决这些漏洞。尽管我们感到无奈,但为了满足客户的要求,我们只能硬着头皮进行升级。而碰巧的是,Mysql5.7在10月份停止了更新,借着这次机会,我们决定研究一下Mysql5.7升级到Mysql8.0的过程。在本文的最后,我将分享一些在这次升级过程中遇到的问题。升级需求:将5.7.43升级到8.0.34, 升级方式in-place。

Jum的博客 4401

MATLAB闪退别慌!5分钟搞定Windows系统预设文件修复(附详细截图)

本文针对MATLAB在Windows系统下频繁闪退的问题,提供了快速有效的解决方案。核心在于修复或重置损坏的MATLAB预设文件,通过图文并茂的五步法,指导用户定位AppData目录、重命名预设文件夹,从而让MATLAB自动生成全新配置以解决闪退。文章还涵盖了问题诊断、设置备份及进阶排查方法,帮助用户彻底根除启动故障。

weixin_29234423的博客 925

【软碟通 | UltraISO】刻录光盘教程(制作U盘启动盘)

前言 今天老师说办公室的电脑有点卡,让我给重新安装一个 Windows 7 系统。于是就用软碟通(UltraISO)在 U 盘上刻录了一个 Windows 7 镜像,然后给老师重装了系统。顺便把制作 U 盘启动盘的教程也分享给大家。 软件 UltraISO v9.7.1.3519:点击跳转(密码:dd2k) 教程 将 U 盘插到电脑上,然后鼠标右击选择格式化(制作启动盘必须格式化) 点击文件-打开 选择下载好的系统镜像(如:Windows 7) 点击启动-写入硬盘映像 选择硬盘

XavierJ的博客 2万+

如何正确升级mysql到8.0版本

一、注意事项: mysql从5.7升级到8.0是支持的,但是只支持GA版本的升级,并且要求版本为5.7.9或者更高 在升级到8.0之前,建议升级到5.7的最新版本。仅仅支持从5.7版本升级到8.0,不支持5.6版本升级到8.0 二、升级准备工作: 1,备份数据(包括当前的数据库和日志文件) 2,升级检查:mysqlcheck -u root -p --all-d...

tpc4289的专栏 4万+

OpenCompass实战:从零部署大模型评测平台,量化模型能力选型

在大模型技术选型与评估中,客观、可量化的评测体系是工程实践的关键。其核心原理在于通过标准化的数据集、统一的评测方法与自动化流程,将主观的模型体验转化为可比较的指标数据。这种评测框架的技术价值在于解决了模型能力评估的模糊性问题,为开发者提供了模型选型、效果对比与迭代优化的科学依据。典型的应用场景包括对比不同开源模型在代码生成、逻辑推理等特定任务上的性能,或是评估微调后模型在业务数据集上的提升效果。OpenCompass作为开源的大模型全能力评测平台,正是这一理念的工程化实现。它通过模块化的四层流水线架构和配置

weixin_28725037的博客 626

组件版本升级 - MySQL_8.4对比MySQL_8.0

MySQL8.4 版本升级,与旧版本8.0对比升级必要性。

云淡风轻 3946

Claude Skills 深度讲解

阶段 1:Function Call(2023)├─ 大模型可以调用外部工具├─ 问题:缺乏对任务的深度理解└─ 局限:工具调用简单线性阶段 2:MCP 上下文工程(2024)├─ 大模型有了更丰富的上下文和工具├─ 问题:仍然需要手动编写复杂的 Prompt└─ 局限:每次对话都需要重新加载上下文阶段 3:Claude Skills(2025)├─ 大模型有了「能力模块」的概念├─ 可以动态加载、组合、执行专门的工作流├─ 真正实现了「知识的模块化和复用」

u013134676的博客 1464

LabVIEW实战:3步搞定Excel模板数据填充(附完整VI源码)

本文提供了一个高效的LabVIEW Excel报表自动化方案,通过使用命名区域定位和动态文件管理,实现数据的精准、动态填充。文章详细阐述了如何构建可复用的数据填充引擎,包括文本、表格数据及图表的写入,并分享了主程序流程、错误处理及性能优化等进阶技巧,帮助工程师彻底摆脱手动操作,提升工作效率。

weixin_29233333的博客 276

MySQL8.0升级的踩坑历险记

文章来源: 学习通http://www.bdgxy.com/ 目录前言1.先彻底卸载现有版本MySQL。2.下载deb并按照MySQL8.x。3.创建用户和配置权限。总结前言 最近忙于Fighting的项目,所以笔耕有些松懈,实为不该。 刚好遇到需要从MySQL5.7.33升级到MySQL8.0.x的需求,于是记录一下整个升级过程,踩坑而过。 背景梗概:本地docker容器中使用的MySQL是5.7.33(镜像系统用的是ubuntu16.04),而新项目在线上使用了MySQL8.0。从线上导出的sql文

菜鸟教程 1340

rv1126 SDK编译【2020-0912版本SDK包】

rv1126 sdk 编译

学习记录 1万+
上一篇: idea配置代码注释模板
Max_bin
博客等级 码龄10年 25粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值