MySQL5.7如何修改root密碼
MySQL5.7 開始,增加了很多安全性的更新。老版本的用戶可能會有一些不習慣,這里介紹關于5.7版本的數據庫密碼問題。
5.7.6 以后的版本
5.7.6 以后的版本在啟動數據庫的時候,會生成密碼放到日志文件里,像這樣:
[root@centos-linux ~]# cat /var/log/mysqld.log | grep 'password' 2016-07-16T03:07:53.587995Z 1 [Note] A temporary password is generated for root@localhost: 2=s6NZk.t:fz
然后使用該密碼登陸數據庫,但是不能進行任何操作,提示需要先修改密碼。
mysql> show databases; ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
這里修改密碼就會遇到驗證,簡單的密碼會提示不符合規(guī)則
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123'; ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
因為5.7里引入了一個validate_password插件來檢驗密碼強度。
默認值分別如下:
mysql> show variables like 'vali%'; +--------------------------------------+--------+ | Variable_name | Value | +--------------------------------------+--------+ | validate_password_dictionary_file | | | validate_password_length | 8 | | validate_password_mixed_case_count | 1 | | validate_password_number_count | 1 | | validate_password_policy | MEDIUM | | validate_password_special_char_count | 1 | +--------------------------------------+--------+ 6 rows in set (0.01 sec)
意義如下:
validate_password_length # 密碼的最小長度,默認為8。 validate_password_mixed_case_count # 至少要包含小寫或大寫字母的個數,默認為1。 validate_password_number_count # 至少要包含的數字的個數,默認為1。 validate_password_policy # 強度等級,可設置為0、1、2。 【0/LOW】:只檢查長度。 【1/MEDIUM】:在0等級的基礎上多檢查數字、大小寫、特殊字符。 【2/STRONG】:在1等級的基礎上多檢查特殊字符字典文件,此處為1。 validate_password_special_char_count # 至少要包含的特殊字符的個數,默認為1。
所以初始設置密碼比如大于8位,包含數字,大小寫字母,特殊字符。
同時也可以修改上面這些配置減弱密碼強度驗證。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
mysql 常用設置 字符集編碼、自動完成(自動提示)、監(jiān)聽外網ip
mysql 常用設置 字符集編碼、自動完成(自動提示)、監(jiān)聽外網ip,需要的朋友可以參考下2012-07-07Oracle和MySQL中生成32位uuid的方法舉例(國產達夢同Oracle)
近日遇到朋友問及如何生成UUID,UUID是通用唯一識別碼(Universally Unique Identifier)方法,這里給大家總結下,這篇文章主要給大家介紹了關于Oracle和MySQL中生成32位uuid的方法,需要的朋友可以參考下2023-08-08