Mysql 5.7 密碼原則 ERROR 1819 (HY000)

來源:互聯網
上載者:User

標籤:none   lob   mysqld   使用者密碼   密碼強度   特殊   5.7   ror   ane   

Mysql 5.7 預設對使用者密碼有密碼強度要求,如果指定弱密碼,會提示如下:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

 

  Mysql 5.7 中的密碼強度控制,是由外掛程式來實現的,具體是由作業系統上的檔案/usr/lib64/mysql/plugin/validate_password.so 來控制(RPM安裝,即預設位置)。先來瞭解下密碼原則

  

  1. 查看預設密碼原則
  • mysql> show variables like validate_password_%;+--------------------------------------+--------+| Variable_name                        | Value  |+--------------------------------------+--------+| validate_password_check_user_name    | OFF    || 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      |+--------------------------------------+--------+

    其中,我們看到參數:validate_password_policy (即密碼原則)的值是MEDIUM。官方對於該參數的值說明如下:

policy explanation
0 or LOW length
1 or MEDIUM 0+numeric;lowercase/uppercase; special characters
2 or STRONG 1+validate_password_dictionary_file

  在上面show  variables 查看到的參數,除 validate_password_policy 外,其他都是密碼原則的各種控制參數。

      • validate_password_length                   ---> 密碼長度,預設8
      • validate_password_mixed_case_count  ---> 大小寫字母每種最少多少個,預設開啟,至少1個。
      • validate_password_number_count        ---> 包含數字個數,預設 >= 1
      • validate_password_special_char_count ---> 特殊字元個數,預設 >= 1
      • validate_password_dictionary_file        ---> 密碼強度控制字典路徑。
2. 密碼強度驗證的開啟與關閉  2.1 啟用

    外掛程式對應的庫對象檔案需在配置選項plugin_dir指定的目錄中。

    可使用--plugin-load=validate_password.so,在server啟動時載入外掛程式,或者將plugin-load=validate_password.so寫入設定檔,:

[mysqld]plugin-load=validate_password.sovalidate-password=FORCE_PLUS_PERMANENT

    也可以通過如下語句在server運行時載入外掛程式(會註冊進mysql.plugins表)

mysql> INSTALL PLUGIN validate_password SONAME validate_password.so;
       2.2 關閉    方法1) 關閉密碼原則

      在/etc/my.cnf設定檔中增加:

      

[mysqld]validate_password=off

      然後重啟mysql

    方法2)更改密碼原則
set global validate_password_policy=0;       # 修改密碼原則為lowset global validate_password_length=0;       # 密碼長度為設定為0 ,即大於0個字元的密碼都可以

    方法3)初始化Mysql時不啟用外掛程式

        

mysqld --initialize-insecure --datadir=/var/lib/mysql --basedir=/usr --user=mysql

 

       

 

Mysql 5.7 密碼原則 ERROR 1819 (HY000)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.