mysql 5.7 強制修改root密碼

運行mysqld_safe --skip-grant-tables & 

如果此時不想被遠程連接:mysqld_safe --skip-grant-tables --skip-networking &

使用mysql連接server

更改密碼: update mysql.user set authentication_string=password('kiwi') where user='root' and Host = 'localhost';

*特別提醒注意的一點是,新版的mysql數據庫下的user表中已經沒有Password字段了

而是將加密後的用戶密碼存儲於authentication_string字段

mysql> flush privileges;

mysql> quit;

修改完畢。重啓

killall -TERM mysqld。 

mysqld_safe &

然後mysql就可以連接了

但是此時操作似乎功能不完全,還要alter user...

alter user 'root'@'localhost' identified by 'kiwi';

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_dictionary_file    |       |
| validate_password_length             | 4     |
| validate_password_mixed_case_count   | 1     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+

6 rows in set (0.00 sec)

mysql> set global validate_password_policy=0;

Query OK, 0 rows affected (0.00 sec)


SET PASSWORD FOR 'root'@'localhost' = PASSWORD('kiwi');
FLUSH PRIVILEGES;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章