MySQL 8.0(Windows)升级笔记

一、背景

  出于安全考虑需将MySQL 8.0 升级到 8.4 版本,特此备忘。

二、过程

(1)业务数据的备份(略)。

(2)升级【身份验证插件】:

  • 8.4不再支持配置项【default_authentication_plugin】,且默认禁用插件【mysql_native_password】,要求使用【caching_sha2_password 】。
  • 在 8.0 中升级用户的插件:通过表【mysql.user】列【plugin】,可知有哪些用户还在使用【mysql_native_password】插件,并予以升级。
sql 复制代码
ALTER USER 'xxx1'@'xxx2' IDENTIFIED WITH caching_sha2_password BY 'xxx3';
FLUSH PRIVILEGES;

  其中,xxx1用列【User】值,xxx2用列【Host】值,例如:'root'@'%';xxx3是密码。

  执行之后,可以看到表【mysql.user】的列【plugin】和【authentication_string】发生更新。

(3)关停并注销MySQL 8.0的服务。

bash 复制代码
net stop mysql
sc delete mysql

  关停之后,即可以备份目录名。

(4)获取MySQL 8.4社区版(MySQL Community Server)

  从 官网 字样 "MySQL Community Server" 的链接进入到下载页。

  选择8.4.x(截至2026-7-15,最新版本为10)的zip文件即可(形如:mysql-8.4.10-winx64.zip)。

(5)安装

  • 新的安装包仍旧是解压安装,目录名可与8.0相同。
  • 将原 my.ini 和 DATA 目录复制到新位置。
  • 修改 mysql的配置文件 my.ini。

   屏蔽配置项【default_authentication_plugin】。

   添加配置项【mysql_native_password】并设置值为OFF。

bash 复制代码
mysql_native_password=OFF

(6)注册服务及启动服务

bash 复制代码
mysqld --install <服务名> # 安装服务,默认服务名为mysql
net start <服务名> # 启动服务

(7)客户端连接测试

三、结论

  MySQL 8.0升级到8.4,主要的修改点是【身份验证插件】,不仅要改配置文件还有mysql数据库。要求将插件一步到位地设置为【caching_sha2_password】即可。

相关文章

  1. MySQL 8.0(Windows)安装笔记

【完】

相关推荐
张人玉1 小时前
基于 Vue 3 + ECharts + Express + SQLite 的可视化大屏与业务管理系统——YOLOv8 高精度车辆行人检测与计数系统
数据库·vue.js·yolo·sqlite·echarts·express
吴声子夜歌1 小时前
MongoDB 4.x——高级特性(Change Stream和事务)
数据库·mongodb
是店小二呀1 小时前
NanoPi R4S怎么搭私人云盘?iStoreOS与WebDAV完整教程
数据库·人工智能
Database_Cool_1 小时前
云数据库备份是怎么实现的、支持时间点恢复吗:阿里云 RDS MySQL 备份与 PITR 详解
数据库·mysql·阿里云
名字还没想好☜2 小时前
Go 的 select 实战:超时、非阻塞收发与优雅退出的三个套路
开发语言·数据库·golang·go·并发
caimouse2 小时前
MM 学习笔记 10:页面文件与系统加载器
笔记·学习·reactos
NWU_LK2 小时前
【WebFlux】第六篇 —— 全链路响应式与数据库交互
java·数据库
一只小菜鸡..2 小时前
南京大学 操作系统 (JYY) 学习笔记:Hello, OS World! (程序的机器视角)
java·笔记·学习
叶总没有会2 小时前
3.2 构建AI智能体项目扩展知识
java·数据库·人工智能·spring·ai