sql >> Databáze >  >> RDS >> Mysql

Jak opravit „MySQL ERROR 1819 (HY000):“ v Linuxu

Při vytváření MySQL uživatel s relativně slabým heslem, můžete narazit na chybu „MySQL ERROR 1819 (HY000):Vaše heslo nesplňuje aktuální požadavky zásad '. Technicky se nejedná o chybu, ale o upozornění, že používáte heslo, které nesplňuje doporučené požadavky zásad pro hesla.

Jinými slovy, používáte slabé heslo, které lze snadno uhodnout nebo vynutit hrubou silou. Vestavěný bezpečnostní mechanismus odrazuje uživatele od vytváření slabých hesel, která mohou způsobit, že vaše databáze bude náchylná k narušení.

Související článek :Užitečné tipy pro řešení běžných chyb v MySQL

Například jsem narazil na chybu při vytváření uživatele, jak je znázorněno

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

Není jasné, že heslo je extrémně slabé a může představovat bezpečnostní riziko.

Jak vyřešit chybu MySQL 1819 (HY000) v Linuxu

MySQL databáze se dodává s validate_password plugin, který, když je povolen, vynucuje politiku ověřování hesla. Plugin vynucuje 3 úrovně zásad ověřování hesla.

  • NÍZKÁ :Umožňuje uživatelům nastavit heslo o délce 8 nebo méně znaků.
  • STŘEDNÍ :Umožňuje uživatelům nastavit heslo o délce 8 nebo méně znaků se smíšenými malými a velkými písmeny a speciálními znaky.
  • STRONG :Umožňuje uživatelům nastavit heslo, které má všechny atributy hesla střední úrovně se zahrnutím souboru slovníku.

Ve výchozím nastavení jsou zásady hesla nastaveny na STŘEDNÍ . Úroveň zásady hesla můžete potvrdit provedením příkazu:

$ SHOW VARIABLES LIKE 'validate_password%';

Pokud příkaz spustíte a získáte výstupní prázdnou sadu, plugin ještě není povolen.

Chcete-li povolit validate_password plugin, spusťte níže uvedené příkazy.

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

Chcete-li potvrdit, že je plugin aktivován, spusťte příkaz.

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

Měli byste získat výstup zobrazený níže:

Chcete-li problém vyřešit, musíte nastavit zásady ověřování hesla na nejnižší úroveň. Vím, že to zní neintuitivně, protože to vytváří cestu pro nastavení slabých hesel, která mohou nakonec způsobit, že vaši databázi napadnou hackeři.

Pokud však stále trváte na svém, můžete udělat toto.

Jak změnit zásady ověřování hesla MySQL

Chcete-li vyřešit chybu MySQL 1819 (HY000) chyba, nastavte nižší zásady ověřování hesla, jak je uvedeno.

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

Poté můžete potvrdit úroveň zásad ověřování hesla.

$ SHOW VARIABLES LIKE 'validate_password%';

Nyní můžete pokračovat a přiřadit relativně slabé heslo podle svého přání.

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

Chcete-li se vrátit k „MEDIUM ’ úroveň zásad hesla, jednoduše vyvolejte příkaz:

mysql> SET GLOBAL validate_password_policy=MEDIUM;
Závěr

Osobně bych ze zřejmých důvodů nedoporučoval nastavovat zásady pro hesla nižší úrovně. Ať už se jedná o běžného uživatele nebo uživatele databáze, doporučuje se vždy nastavit silné heslo MySQL s více než 8 znaky s kombinací velkých, malých písmen, čísel a speciálních znaků.

Tato příručka je pro ty, kteří chtějí vědět, jak se v takové chybě orientovat, jinak se vždy doporučuje nastavit silné heslo.


  1. Top 10 osvědčených postupů v MySQL

  2. Převeďte razítko MySql DateTime do formátu Datum v JavaScriptu

  3. EM12c nyní umožňuje DB12c pro úložiště

  4. ekvivalent onbeforeprint() a onafterprint() pro prohlížeče bez IE