mysql8.0更改用户密码
Posted 大鹏bmfm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql8.0更改用户密码相关的知识,希望对你有一定的参考价值。
1、mysql 启动命令 :
mysql -uroot -p
2、mysql版本 查看命令:
select version();
image.png
3、查看用户名对应的host 命令 :
select user,host from user;
image.png
4、修改用户的密码:
alter user '用户名'@'hostname' identified by 'newpwd';
---‘用户名’是要修改的用户名,hostname是user对应的host,‘newpwd’是新密码
image.png
修改用户zp新密码为1234
5、这个时候权限报错
ERROR 1227 (42000): Access denied; you need (at least one of) the SYSTEM_USER privilege(s) for this operation
image.png
原因:MySQL8.0.16版本中新增了一个system_user帐户类型,由于root用户没有SYSTEM_USER权限,把权限加入后即可解决。
grant system_user on . to 'root';
image.png
6、刷新权限
flush privileges;
MYSQL更改密码后navicat依然可用旧密码连接
MYSQL更改密码后navicat依然可用旧密码连接
linux服务器密码更改
假设我之前的用户名是root 密码123456,新密码是654321
现在是本地登陆需要使用654321
而navicat连接时需要用123456旧密码
说明没有刷新权限
通过mysql -u用户名 -p指定root用户登录MySQL
输入后回车会提示输入密码。
shell> mysql -u root mysql
mysql> UPDATE user SET Password = PASSWORD('654321')
-> WHERE User = 'root';
mysql> FLUSH PRIVILEGES;
刷新权限(必须步骤)
文章已迁移:https://juejin.im/post/5d0c44d46fb9a07edc0b5df3
以上是关于mysql8.0更改用户密码的主要内容,如果未能解决你的问题,请参考以下文章