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)安装笔记。

【完】

相关推荐
旖旎夜光5 小时前
【C++ 基础入门】C++ 继承(上):概念、切片、隐藏、默认成员函数与友元
c++·笔记·学习
Thanks_ks5 小时前
MySQL 的索引是什么?用图书馆的目录讲明白
数据库·sql·mysql·索引·联合索引·explain·慢查询优化
叼烟扛炮5 小时前
[LangChain] 学习笔记(05):提示词模板(Prompt)与少样本注入(Few-Shot)实战
linux·人工智能·笔记·学习·langchain·prompt
CoderYanger11 小时前
Java EE 进阶:8.MyBatis 操作数据库(入门)(第二弹)
java·数据库·spring boot·spring·面试·java-ee·mybatis
wafrdggh14 小时前
2026电商快递批量查询怎么用?固乔助手模板设置评测
大数据·数据库·小程序
一个天蝎座 白勺 程序猿14 小时前
KingbaseES数据库归档重做日志文件管理:从配置到运维的实战指南
运维·数据库·oracle·kingbasees·金仓数据库
龙腾AI白云17 小时前
仿真到现实(Sim-to-Real)迁移:跨越仿真与现实鸿沟
数据库·机器学习·plotly·知识图谱·tornado
La Pulga18 小时前
【FreeRTOS源码学习笔记】任务延时列表
笔记·mcu·学习·嵌入式·freertos·实时操作系统
freejackman20 小时前
【实战二】字段级血缘追踪:拆解 AST 迷局,精准穿透函数链与子查询
大数据·数据库·sql
.痞老板.21 小时前
mysql初阶--增删改查操作
数据库·mysql