Kuinka korjata "MySQL ERROR 1819 (HY000):" Linuxissa


Kun luot MySQL-käyttäjän, jolla on suhteellisen heikko salasana, saatat kohdata virheilmoituksen MySQL ERROR 1819 (HY000): Salasanasi ei täytä nykyisiä käytäntövaatimuksia. Teknisesti tämä ei ole virhe, vaan ilmoitus siitä, että käytät salasanaa, joka ei täytä suositeltuja salasanakäytäntövaatimuksia.

Toisin sanoen käytät heikkoa salasanaa, joka voidaan helposti arvata tai raa'alla pakolla. Sisäänrakennettu suojausmekanismi estää käyttäjiä luomasta heikkoja salasanoja, jotka voivat tehdä tietokannastasi alttiita tietomurroille.

Esimerkiksi törmäsin virheeseen luodessasi käyttäjää kuvan mukaisesti

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

Ei ole ihme, että salasana on erittäin heikko ja voi aiheuttaa turvallisuusriskin.

MySQL ERROR 1819 (HY000) -virheen ratkaiseminen Linuxissa

MySQL-tietokanta toimitetaan validate_password-laajennuksen kanssa, joka, kun se on käytössä, pakottaa salasanan vahvistuskäytännön. Salasanojen vahvistuskäytännöissä on 3 tasoa, joita laajennus pakottaa.

  • MATALA: Käyttäjät voivat asettaa salasanan, jossa on enintään 8 merkkiä.
  • KESKIPÄINEN: Käyttäjät voivat asettaa salasanan, jossa on korkeintaan 8 merkkiä sekä kirjainkokoja ja erikoismerkkejä.
  • VAHVA: Antaa käyttäjien asettaa salasanan, jolla on kaikki keskitason salasanan attribuutit, mukaan lukien sanakirjatiedosto.

Oletusarvoisesti salasanakäytännöksi on asetettu KESKIPÄINEN. Voit vahvistaa salasanakäytäntötason suorittamalla komennon:

SHOW VARIABLES LIKE 'validate_password%';

Jos suoritat komennon ja saat tulosten tyhjän joukon, laajennus ei ole vielä käytössä.

Ota validate_password-laajennus käyttöön suorittamalla alla olevat komennot.

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

Varmista, että laajennus on aktivoitu, suorittamalla komento.

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

Sinun pitäisi saada alla näkyvä tulos:

Ongelman ratkaisemiseksi sinun on asetettava salasanan vahvistuskäytäntö alimmalle tasolle. Tiedän, että tämä kuulostaa epäselvältä, koska se luo väylän heikkojen salasanojen asettamiseen, mikä voi lopulta aiheuttaa tietokannan vaarantumisen hakkereilta.

Jos kuitenkin vaadit haluavasi, tässä on mitä voit tehdä.

Kuinka muuttaa MySQL-salasanan vahvistuskäytäntöä

Voit ratkaista MySQL ERROR 1819 (HY000) -virheen asettamalla alhaisemman salasanan vahvistuskäytännön kuvan mukaisesti.

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

Tämän jälkeen voit vahvistaa salasanan vahvistuskäytäntötason.

SHOW VARIABLES LIKE 'validate_password%';

Nyt voit jatkaa ja määrittää suhteellisen heikon salasanan toiveidesi mukaan.

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

Voit palata salasanakäytäntötasolle KESKIPÄINEN käynnistämällä komennon:

mysql> SET GLOBAL validate_password_policy=MEDIUM;
Johtopäätös

Henkilökohtaisesti en suosittele alemman tason salasanakäytännön määrittämistä ilmeisistä syistä. Olipa kyseessä tavallinen käyttäjä tai tietokannan käyttäjä, on suositeltavaa asettaa aina vahva MySQL-salasana, jossa on yli 8 merkkiä sekä isoja, pieniä kirjaimia, numeerisia ja erikoismerkkejä.

Tämä opas on tarkoitettu niille, jotka haluavat tietää kuinka navigoida tällaisessa virheessä, muuten vahvan salasanan asettaminen on aina suositeltavaa.