乐于分享
好东西不私藏

Mysql 密码认证插件变化以及影响范围

Mysql 密码认证插件变化以及影响范围

Mysql 密码认证插件变化以及影响范围

一、原生密码认证插件调整

版本

变化

8.0

默认使用 caching_sha2_password 进行认证,使用 SHA-256 算法,进入服务器端缓存提高连接速度

8.4

默认禁用 mysql_native_password 插件,可以手动启用插件

9.0

移除 mysql_native_password 插件

受影响数据库管理工具

(1)Navicat < v12 

(2)SQLyog < v12.5 

(3)HeidiSQL < 2018 年 

(4)MySQL Workbench  < v8.0

解决方案:升级到对应版本以上

受影响的驱动程序

语言/环境

受影响范围

PHP

PHP < 7.1.16 或 PHP < 7.2.4

Java

Connector/J < 8.0.11

Python

mysql-connector-python < 8.0.11

Node.js

mysql 库(需要切换到 mysql2 库)

Go

go-sql-driver/mysql < 1.4.1

.NET

MySql.Data < 8.0.11

解决方案:升级到对应版本以上,或更新库

二、启用原生密码认证插件

Mysql 8.4 中,如需要使用 配置文件中 [mysqld] 部分添加内容

[mysqld]               mysql_native_password=ON

并进行重启

三、验证 mysql_native_password 插件是否可用

mysql> SELECT PLUGIN_NAME, PLUGIN_STATUS FROM information_schema.PLUGINS WHERE PLUGIN_TYPE = ‘AUTHENTICATION’;

如存在 mysql_native_password :ACTIVE; 代表 mysql_native_password 认证插件可用

四、创建用户(使用 mysql_native_password 插件认证)

CREATE USER ‘eecen’@’%’ IDENTIFIED WITH ‘mysql_native_password’ BY ‘eecen@test’;

五、修改用户密码(使用 mysql_native_password 插件认证)

ALTER USER ‘eecen’@’%’ IDENTIFIED WITH ‘mysql_native_password’ BY ‘eecen@test’;

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » Mysql 密码认证插件变化以及影响范围

评论 抢沙发

7 + 2 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮