MySQL5.7关于密码二三事

时间:2024-05-03 00:06:37

MySQL5.7关于密码二三事

第一个:update user set password=password('root') where user='root' and host='localhost';语句无用

在5.7的user表中没有了password这个列名,改为了authentication_string,所以修改用户登入的密码语句为

update user set authentication_string=password('root') where user='root' and host='localhost';

第二个:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

在登入MySQL以后,任何操作都会显示ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

原因:MySQL5.7对于密码安全的要求限制,所以你要修改root密码,要不设置符合它要求的密码,或者修改其默认配置

下面是修改它默认配置的方法

首先,修改validate_password_policy参数的值

mysql> set global validate_password_policy=0;

Query OK, 0 rows affected (0.00 sec)

validate_password_length(密码长度)参数默认为8,我们修改为1

mysql> set global validate_password_length=1;

Query OK, 0 rows affected (0.00 sec)

完成之后再次执行修改密码语句即可成功

mysql> alter user 'root'@'localhost' identified by 'root';

Query OK, 0 rows affected (0.00 sec)

神坑的事情,修改密码的时候不提醒我,进入操作以后再说,我都登录进来了,这样密码,还有什么安全性??