千家信息网

mysql迁移至8.0时应该注意什么

发表于:2025-11-10 作者:千家信息网编辑
千家信息网最后更新 2025年11月10日,这篇文章主要为大家展示了mysql迁移至8.0时应该注意什么,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。密码模式PDO::__construct():
千家信息网最后更新 2025年11月10日mysql迁移至8.0时应该注意什么

这篇文章主要为大家展示了mysql迁移至8.0时应该注意什么,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。

密码模式

PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password]

mysql8 之后,默认的密码模式改为 caching_sha2_password,新的模式需要新的驱动,至少现在 pdo / navicat 还没给出,所以我们还是得切换成老的 mysql_native_password 模式。

`mysql_native_password`:7.0 以下`caching_sha2_password`:8.0 以上

1、my.cnf 配置默认的密码模式

[mysqld]default_authentication_plugin=mysql_native_password

2、更新账号的密码模式

# 创建新的账号create user 'root'@'%' identified with mysql_native_password by '123456';# 已存在的账号alter user 'root'@'%' identified with mysql_native_password by '123456';

3、如果你需要授权

# 授权也不能兼并创建账号了,只能授权grant all privileges on *.* to 'root'@'%' with grant option;flush privileges;

密码复杂度策略

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

密码复杂度验证策略导致的,关闭后设定即可

set global validate_password.policy=0;set global validate_password.length=6;

默认编码

PDO::__construct(): Server sent charset (255) unknown to the client. Please, report to the developers

设定 mysql 服务的默认编码

# Default Homebrew MySQL server config[client]default_character_set=utf8mb4[mysql]default_character_set=utf8mb4[mysqld]default_authentication_plugin=mysql_native_passwordcharacter_set_server=utf8mb4collation_server=utf8mb4_general_ci

远程访问

1、my.conf 注释掉本地监听

[mysqld]#bind_address=127.0.0.1

2、更新账号的 host

update mysql.user set host='%' where user='root';

以上就是关于mysql迁移至8.0时应该注意什么的内容,如果你们有学习到知识或者技能,可以把它分享出去让更多的人看到。

0