修改用户名密码MySQL 5.6/5.7/8.X各不相同

修改不同版本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;
相关推荐
Full Stack Developme3 分钟前
Mycat 2 实现 MySQL 读写分离,并且实现 主从同步
android·数据库·mysql
alonewolf_9920 分钟前
MySQL Explain详解与索引优化实战
数据库·mysql·adb
それども25 分钟前
MySQL 查询索引最左前缀原则,如果是(a,b)的联合索引,WHERE b = ? AND a = ?会走索引吗
数据库·mysql
それども26 分钟前
MySQL EXPLAIN Impossible WHERE noticed after reading const tables
数据库·mysql
萧曵 丶13 小时前
MySQL 主键不推荐使用 UUID 的深层原因
数据库·mysql·索引
kaico201816 小时前
MySQL的索引
数据库·mysql
资生算法程序员_畅想家_剑魔17 小时前
Mysql常见报错解决分享-01-Invalid escape character in string.
数据库·mysql
霖霖总总18 小时前
[小技巧14]MySQL 8.0 系统变量设置全解析:SET GLOBAL、SET PERSIST 与 SET PERSIST_ONLY 的区别与应用
数据库·mysql
alonewolf_9918 小时前
深入剖析MySQL索引底层:B+树、联合索引与跳跃扫描原理全解
数据库·b树·mysql
oMcLin18 小时前
如何在Debian 11上通过配置MySQL 8.0的分布式架构,提升跨区域数据同步的效率与延迟?
分布式·mysql·debian