Bii a ṣe le ṣatunṣe "MySQL ERROR 1819 (HY000):" ni Linux


Nigbati o ba n ṣẹda olumulo MySQL pẹlu ọrọ igbaniwọle ti ko lagbara, o le ba aṣiṣe naa ‘MySQL ERROR 1819 (HY000): Ọrọ aṣínà rẹ ko tẹlọrun awọn ibeere eto imulo lọwọlọwọ’. Ni imọ-ẹrọ, eyi kii ṣe aṣiṣe, ṣugbọn ifitonileti pe o nlo ọrọ igbaniwọle kan ti ko ni ibamu si awọn ibeere eto imulo ọrọ igbaniwọle ti a ṣe iṣeduro.

Ni awọn ọrọ miiran, o nlo ọrọigbaniwọle alailagbara ti o le ni rọọrun gboju le tabi jẹ agbara-agbara. Ọna aabo ti a ṣe sinu irẹwẹsi awọn olumulo lati ṣiṣẹda awọn ọrọigbaniwọle alailagbara eyiti o le mu ki ibi-ipamọ data rẹ tẹ si awọn irufin.

Fun apẹẹrẹ, Mo sare sinu aṣiṣe nigbati o ṣẹda olumulo bi o ṣe han

mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;

Kii ṣe ọpọlọ pe ọrọ igbaniwọle lagbara pupọ ati pe o le mu eewu aabo wa.

Bii a ṣe le yanju aṣiṣe MySQL ERROR 1819 (HY000) ni Lainos

Ibi ipamọ data MySQL gbe pẹlu ohun itanna validate_password eyiti o jẹ nigbati o ba ṣiṣẹ, n mu eto imulo afọwọsi ṣiṣẹ. Awọn ipele 3 wa ti eto imulo afọwọsi ọrọ igbaniwọle ti o ni ipa nipasẹ ohun itanna.

  • LOW: Gba awọn olumulo laaye lati ṣeto ọrọigbaniwọle ti awọn ohun kikọ 8 tabi diẹ.
  • Alabọde: Gba awọn olumulo laaye lati ṣeto ọrọigbaniwọle ti awọn ohun kikọ 8 tabi diẹ pẹlu awọn ọran adalu ati awọn kikọ pataki.
  • TI o lagbara: Gba awọn olumulo laaye lati ṣeto ọrọ igbaniwọle kan ti o ni gbogbo awọn abuda ti ọrọ igbaniwọle alabọde pẹlu ifisi faili iwe-itumọ kan.

Nipa aiyipada, eto imulo ọrọ igbaniwọle ti ṣeto si Alabọde. O le jẹrisi ipele eto imulo ọrọigbaniwọle, nipa ṣiṣe pipaṣẹ:

$ SHOW VARIABLES LIKE 'validate_password%';

Ti o ba ṣiṣẹ aṣẹ naa ki o gba ohun elo ti o ṣofo, lẹhinna ohun itanna ko ṣiṣẹ sibẹsibẹ.

Lati jẹki ohun itanna validate_password, ṣiṣe awọn aṣẹ ni isalẹ.

mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';
mysql> install plugin validate_password soname 'validate_password.so';

Lati jẹrisi pe ohun itanna naa ti muu ṣiṣẹ, ṣiṣe aṣẹ naa.

mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';

O yẹ ki o gba iṣẹjade ti o han ni isalẹ:

Lati yanju ọrọ naa, o nilo lati ṣeto eto imulo afọwọsi ọrọ igbaniwọle si ipele ti o kere julọ. Mo mọ pe eyi dun counterintuitive bi o ṣe ṣẹda ọna fun siseto awọn ọrọigbaniwọle alailagbara eyiti o le fa ki database rẹ di alagbata nipasẹ awọn olutọpa.

Sibẹsibẹ, ti o ba tun tẹnumọ pe nini ọna rẹ, eyi ni ohun ti o le ṣe.

Bii o ṣe le Yi Afihan Ifọwọsi Ọrọigbaniwọle MySQL pada

Lati yanju aṣiṣe MySQL ERROR 1819 (HY000), ṣeto eto imulo afọwọsi kekere bi o ti han.

mysql> SET GLOBAL validate_password_policy=LOW;
OR
mysql> SET GLOBAL validate_password_policy=0;

O le lẹhinna jẹrisi ipele eto imulo afọwọsi ọrọigbaniwọle.

$ SHOW VARIABLES LIKE 'validate_password%';

Bayi o le tẹsiwaju ki o fi ọrọ igbaniwọle ti ko lagbara jo gẹgẹ bi ifẹ rẹ.

mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;

Lati pada si ipele eto imulo ọrọ igbaniwọle ‘MEDIUM’, jiroro pe pipaṣẹ:

mysql> SET GLOBAL validate_password_policy=MEDIUM;

Tikalararẹ, Emi kii yoo ṣeduro ṣeto eto imulo ọrọigbaniwọle ipele kekere fun awọn idi ti o han. Boya o jẹ olumulo deede tabi olumulo ibi ipamọ data, o ni iṣeduro lati nigbagbogbo ṣeto ọrọ igbaniwọle MySQL lagbara pẹlu diẹ sii ju awọn ohun kikọ 8 pẹlu idapọ oke nla, kekere, nọmba ati awọn ohun kikọ pataki.

Itọsọna yii jẹ nitori awọn ti o fẹ lati mọ bi a ṣe le kiri iru aṣiṣe bẹ, bibẹẹkọ, ṣeto ọrọ igbaniwọle to lagbara ni a ṣe iṣeduro nigbagbogbo.