MySQL 8改动
8.0修改了默认验证方式,之前使用mysql_native_password插件,新版使用caching_sha2_password 验证插件两个插件并不兼容,使用8版本之后要留意验证问题。
修改密码
第一次登录后需要reset password才能操作
create user 'appuser'@'%' identified with mysql_native_password by '123456.com';
GRANT ALL PRIVILEGES ON *.* TO 'appuser'@'%';
FLUSH PRIVILEGES;
修改当前用户密码
ALTER USER USER() IDENTIFIED BY '123456.com';
FLUSH PRIVILEGES;
调整密码验证规则
set global validate_password.policy=0;
set global validate_password.length=1;
ALTER USER USER() IDENTIFIED BY '123456.com';
FLUSH PRIVILEGES;
兼容旧版本
当前很多连接工具还没有升级,为了兼容旧版本建议修改回原来的验证插件在my.cnf文件中默认有下面的语句,添加到my.cnf
default-authentication-plugin=mysql_native_password
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
FLUSH PRIVILEGES;
查看
select user, host, plugin, authentication_string from mysql.user;