1. 程式人生 > >mysql5.7設定簡單密碼報錯ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

mysql5.7設定簡單密碼報錯ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

【問題】

有時候,只是為了自己測試,不想密碼設定得那麼複雜,譬如只想設定root的密碼為123456。

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');

但是會報錯:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

【原因】

原來MySQL5.6.6版本之後增加了密碼強度驗證外掛validate_password,相關引數設定的較為嚴格。
使用了該外掛會檢查設定的密碼是否符合當前設定的強度規則,若不滿足則拒絕設定。影響的語句和函式有:create user,grant,set password,password(),old password。

【解決】

1) 檢視mysql全域性引數配置

該問題其實與mysql的validate_password_policy的值有關。
檢視一下msyql密碼相關的幾個全域性引數:

mysql> select @@validate_password_policy;
+----------------------------+
| @@validate_password_policy |
+----------------------------+
| MEDIUM                     |
+----------------------------+
1 row in set (0.00 sec)


mysql> SHOW VARIABLES 
LIKE
'validate_password%'; +--------------------------------------+--------+ | 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.08 sec)

2)引數解釋

validate_password_dictionary_file
--外掛用於驗證密碼強度的字典檔案路徑。
validate_password_length
--密碼最小長度,引數預設為8,它有最小值的限制,最小值為:validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
validate_password_mixed_case_count
--密碼至少要包含的小寫字母個數和大寫字母個數。
validate_password_number_count
--密碼至少要包含的數字個數。
validate_password_policy
--密碼強度檢查等級,0/LOW、1/MEDIUM、2/STRONG。有以下取值:
Policy                 Tests Performed
0 or LOW               Length
1 or MEDIUM         Length; numeric, lowercase/uppercase, and special characters
2 or STRONG        Length; numeric, lowercase/uppercase, and special characters; dictionary file
--預設是1,即MEDIUM,所以剛開始設定的密碼必須符合長度,且必須含有數字,小寫或大寫字母,特殊字元。
validate_password_special_char_count
--密碼至少要包含的特殊字元數。

3)修改mysql引數配置

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.05 sec)

mysql>
mysql>
mysql> set global validate_password_mixed_case_count=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_number_count=3;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_special_char_count=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_length=3;
Query OK, 0 rows affected (0.00 sec)

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_dictionary_file    |       |
| validate_password_length             | 3     |
| validate_password_mixed_case_count   | 0     |
| validate_password_number_count       | 3     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 0     |
+--------------------------------------+-------+
6 rows in set (0.00 sec)

4)修改簡單密碼:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123');
Query OK, 0 rows affected, 1 warning (0.00 sec)

OK了,完美解決!

相關推薦

mysql5.7設定簡單密碼ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

【問題】有時候,只是為了自己測試,不想密碼設定得那麼複雜,譬如只想設定root的密碼為123456。SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');但是會報錯:mysql> SET PASSWORD FOR 'root'@'localho

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

mysql5.7初次登入使用提示 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 需要重置密碼。。。 重置就重置吧,我日結果又說我密碼

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

clas 必須 lte ror edi ted roo 數字 修改 mysql5.7初次登錄使用提示 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before ex

mysql錯誤詳解(1819):ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 今天新安裝了一個mysql5.7,想自己修改一個新密碼,結果總是出現1819這個錯誤,後面查了一

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

為了加強安全性,MySQL5.7為root使用者隨機生成了一個密碼,在error log中,關於error log的位置,如果安裝的是RPM包,則預設是/var/log/mysqld.log。 一般可通過log_error設定 mysql> select @@log_error; +-----

安裝MySQL5.6新建使用者並建立密碼時總是提示密碼不符合要求:ERROR 1819 (HY000): Your password does NOT satisfy the CURRENT

檢視得知,原來MySQL5.6.6增加了密碼強度驗證外掛validate_password,相關引數設定的較為嚴格,所以…… 使用了該外掛會檢查設定的密碼是否符合當前設定的強度規則,若不滿足則拒絕設定。影響的語句和函式有:create user,grant,set password,password()

mysql5.7設置簡單密碼ERROR 1819 (HY000): Your password

大寫字母 variable 最小 修改 ase 有關 cal sele 小寫字母 【問題】 有時候,只是為了自己測試,不想密碼設置得那麽復雜,譬如只想設置root的密碼為123456。 SET PASSWORD FOR ‘root‘@‘localhost‘ = PASSWO

Mysql-安裝指南 mysql修改密碼Your password does not satisfy the current policy requirements CentOS7 通過YUM安裝MySQL5.7 設定MySQL允許外網訪問 CentOS7 通過YUM安裝MySQL5.7

      1、設定使用者名稱密碼 首次登入後修改密碼如下: 如果密碼設定太過簡單會報以下錯誤 mysql修改密碼Your password does not satisfy the current policy requirements 出

mysql5.7 Your password does not satisfy the current policy requirements問題解決

特殊字符 src strong form 改密 for mysql date 特殊 安裝mysql5.7rpm包,在更改密碼的時候,提示錯誤 這是由於Mysql5.7默認對於密碼的要求強度較高,設置的密碼過於簡單不予通過。要解決這個問題,涉及到的參數有validate

解決 MySQL 5.7Your password does not satisfy the current policy requirements. 問題

Mac OS X 下通過 Brew 安裝 MySQL 後,預設密碼為空,然後執行 mysql_secure_installation 命令設定密碼 然後我手賤的在密碼強度那裡輸入了 2(真2了。。。)在這種強度下想要把密碼設定為 123456 就不可能了 再然後我嘗試重

mysql5.7.24啟動ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords.

報錯原因是:密碼過期。不管你是剛剛修改密碼還是什麼,只要登陸都是有問題的,都是報這樣子的錯誤。 解決方法是: 1、修改/etc/my.cnf檔案,在[mysqld]下加入“skip-grant-tables”。 2、重啟mysql伺服器 3、登陸mysql [[email prote

mysql-5.7.21版本一直ERROR 1067 (42000)!

ima 你們 water http blog 配置 有用 點贊 ESS 網上很多教程都是錯誤的,說改什麽配置文件?都是錯誤的!唯有這樣子是正確的,分享給你們。如覺得有用,請點贊 一,報錯上圖: 二、修改數據庫配置 三、重啟數據庫,並重啟進入數據庫 四、重新插入數據 看到已經

MySQL主機上修改超級管理員密碼(ERROR 1045 (28000)時使用)

     當使用mysqladmin等方式修改超級管路員密碼後,再次登入可能報錯如下: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解決辦

MySQL5.7.11版本,Cannot proceed because system tables used by Event Scheduler were found damaged at server start

解決思路: 1. 在MySQL安裝目錄下執行./mysql_upgrade -uroot -p,此處是為了更新MySQL的系統表,在5.6之前的版本上,更新系統表的命令是mysql_fix_privilege_tables(注意MySQL版本); 2.執行完之後重啟mysql服務  

mysql5.7密碼過期ERROR 1862 (HY000): Your password has expired. To log in you must chang

一、mysql5.7 密碼過期問題 報錯: ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords.

mysql5.7密碼過期ERROR 1862 (HY000): Your password has expired. To log in you must change

環境: Centos 6.5   mysql5.7 一、mysql5.7 密碼過期問題 報錯: ERROR 1862 (HY000): Your password has expired. To log in you must change

MySQL5.7設定root密碼

update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localho

關於MySql5.7版本修改密碼時,提示ERROR 1049 (42000): Unknown database 'mysql'的問題

前面一切順利, 這是我自己新建的配置檔案: 從檔案中可以看到,我在mysql解壓目錄下,新建了一個data資料夾,並將其作為mysql資料檔案存放路徑. 接下來到了修改資料庫登入密碼的時候,按理來說就是這麼操作: mysql> use m

mysql5.7免安裝版處理You must reset your password using ALTER USER statement before executing

安裝完mysql 之後,登陸以後,不管執行任何命令,總是提示這個 step 1: SET PASSWORD = PASSWORD(‘your new password‘); step 2: ALTER USER ‘root‘@‘localhost‘ PASSWORD

Linux下Centos7以rpm方式離線安裝MySQL5.7教程以及部分解決方案

由於公司的系統在內網下,沒有網際網路,所以需要離線安裝MySQL,經過兩天摸索,終於安裝成功。把安裝過程整理了一下,方便日後使用,也希望能給大家提供點幫助。   安裝環境:CentOS7 安裝版本:MySQL5.7 一、安裝過程 解除安裝系統自帶的mariadb-libs