MySQL5,5.7,8密码更改

最近重装了mysql,版本是8,在改密码时出现了一些问题,在此记录一下。

MySQL5:

方法1: 用SET PASSWORD命令

mysql -u root

mysql> SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘newpass’);

方法2:用mysqladmin

mysqladmin -u root password “newpass”

如果root已经设置过密码,采用如下方法

mysqladmin -u root password oldpass “newpass”

方法3: 用UPDATE直接编辑user表

mysql -u root

mysql> use mysql;

mysql> UPDATE user SET Password = PASSWORD(‘newpass’) WHERE user = ‘root’;

mysql> FLUSH PRIVILEGES;

如果丢失了root密码:

mysqld_safe –skip-grant-tables&

mysql -u root mysql

mysql> UPDATE user SET password=PASSWORD(“new password”) WHERE user=’root’;

mysql> FLUSH PRIVILEGES;

MySQL5.7改密码无password字段:

这是我一开始遇到的问题,进入user表发现没有password字段,搜到了这个方法,但没有解决。

mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

将更改语句替换为update MySQL.user set authentication_string=password(‘root’) where user=’root’ ;

MySQL8:

最后发现8和5的更改方法区别挺大

1.mysql -u root -p ‘原来的密码’ //进入数据库中

2.show databases;

3.use mysql;

4.使用下面的语句修改密码:

ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的新密码’

5.退出,使用新的密码登录

你可能感兴趣的:(数据库)