修改不同版本MySQL的用户名密码
步骤1:新建用户
mysql">-- 创建一个名为ubuntu的mysql操作者,允许从任意IP地址访问数据库
CREATE user 'ubuntu'@'%' ;
步骤2:修改MySQL用户密码(分三种情况)
MySQL各个历史版本用户密码的设置方式千奇百怪,以下分三种情况:
情况A:MySQL 5.6
MySQL==5.6.x 和更低版本直接明文存储密码
mysql">update mysql.`user` set password="p@ssw0rd" where `User`="ubuntu" and `Host`="%";
情况B:MySQL 5.7
MySQL==5.7.x 版本修改某个用户的密码必须用PASSWORD()函数
mysql">update mysql.`user` set authentication_string=PASSWORD("p@ssw0rd") where `User`="ubuntu" and `Host`="%";
-- UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='用户名' AND Host='主机名';
情况C:MySQL 8
MySQL>=8.x 以上版本使用caching_sha2_password方式取代旧的PASSWORD()函数
mysql">ALTER mysql.`user` 'ubuntu'@'%' IDENTIFIED WITH 'caching_sha2_password' BY 'p@ssw0rd';
步骤3
– 最后赋予该用户最高管理权限
mysql">GRANT ALL PRIVILEGES ON *.* TO 'ubuntu'@'%';
FLUSH PRIVILEGES;