Mysql 修改密码不成功(不生效)的解决办法

mysql 修改密码不成功

    • 前言
    • 试过的没成功的方法
      • 1. mysqladmin命令
      • 2.UPDATE user 语句(回目录)
      • 3.SET PASSWORD 语句(回目录)
    • 最后的解决办法

前言

首先说明我这里的情况是,开启了mysql服务之后,我以root用户登录mysql数据库的时候始终不需要密码,想要为msql的root用户设置一个登录密码,试过好几种类办法,都没有成功,最后发现是系统版本的问题。新版本的密码字段换成了authentication_string

试过的没成功的方法

1. mysqladmin命令

格式如下(其中,USER为用户名,PASSWORD为新密码):

mysqladmin -u USER -p password PASSWORD

该命令之后会提示输入原密码,输入正确后即可修改。
例如,设置root用户的密码为123456,则

mysqladmin -u root -p password 123456

2.UPDATE user 语句(回目录)

这种方式必须是先用root帐户登入mysql,然后执行:

UPDATE user SET password=PASSWORD('123456') WHERE user='root';
FLUSH PRIVILEGES;

3.SET PASSWORD 语句(回目录)

这种方式也需要先用root命令登入mysql,然后执行:

SET PASSWORD FOR root=PASSWORD('123456');

最后的解决办法

上面的都是无效之后,找到的解决办法
原来是新版本的mysql已经没有passwd字段了,换成authentication_string即可

update mysql.user set authentication_string=password('root') where user='root' ;

执行成功之后记得重启mysql服务

service mysql restart

你可能感兴趣的:(Mysql 修改密码不成功(不生效)的解决办法)