MySQL 8.0修改密码
最近系统升级牵涉到MySQL升级,需要升级到 MySQL 8.0,涉及MySQL用户的密码修改,特地记录一下!
MySQL 8.0前修改密码
在MySQL 8.0前,执行:SET PASSWORD=PASSWORD('[新密码]') 进行密码修改,在MySQL 8.0后,以上的方法使用root用户修改别的用户密码是报错的,因为MySQL 8.0后修改了修改密码的方式!
mysql> use mysql;
mysql> update user set password=password('新密码') where user='用户名';
或者
mysql> update mysql.user set authentication_string=password('新密码') where user='用户名';
mysql> flush privileges; --刷新MySQL的系统权限相关表
MySQL 8.0后修改密码
MySQL 8.0修改密码步骤:
- 以 root 用户登录MySQL。
- 进入MySQL系统自带数据库: mysql 数据库中。
- 执行更改密码语句。
- 退出MySQL后,使用新的密码重新登陆。
具体语句如下:
[root@localhost ~]# ./bin/mysql -u root -p '原来的密码'
mysql> show databases;
mysql> use mysql;
mysql> ALTER USER '用户名'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
mysql> flush privileges; --刷新MySQL的系统权限相关表
mysql> exit;