Come principiante di MySQL, potresti incontrare un messaggio di errore che dice "ERROR 1819 (HY000): La tua password non soddisfa i requisiti della policy corrente." Questo errore non è un bug, ma una funzionalità di sicurezza integrata di MySQL che garantisce che gli utenti impostino password robuste. Questo tutorial ti guiderà nella comprensione di questo errore e su come correggerlo.

Cosa Scatena l'Errore?

Quando imposti una password per l'utente root di MySQL, potresti essere invitato ad abilitare il componente VALIDATE PASSWORD. Se abilitato, questo componente controlla la robustezza della password fornita. Se la tua password è considerata debole, incontrerai l'errore 1819.

Ad esempio, se provi a creare un utente con una password debole come questa:

mysql> create user 'ostechnix'@'localhost' identified by 'miapassword';

Vedrai l'errore:

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

Questo errore persisterà finché non fornirai una password che soddisfi i requisiti della policy delle password corrente o disabiliti il componente VALIDATE PASSWORD.

Comprendere la Policy di Convalida della Password

MySQL applica tre livelli di policy di convalida della password quando il plugin VALIDATE PASSWORD è abilitato:

  1. LOW: La password deve essere lunga almeno 8 caratteri.
  2. MEDIUM: La password deve essere lunga almeno 8 caratteri, includere caratteri numerici, maiuscole/minuscole e caratteri speciali.
  3. STRONG: La password deve essere lunga almeno 8 caratteri, includere caratteri numerici, maiuscole/minuscole, caratteri speciali e controllo contro il dizionario.

Per trovare il livello attuale della policy delle password, esegui il seguente comando:

mysql> SHOW VARIABLES LIKE 'validate_password%';

Come Correggere l'Errore

Ci sono due modi principali per correggere l'errore 1819:

1. Cambia la Password per Soddisfare la Policy

Il primo metodo è impostare una password che soddisfi la policy di convalida corrente. Ad esempio, se la policy è impostata su Medium, potresti impostare una password come 'Password123#@!' che include un numero, minuscole, maiuscole e caratteri speciali.

2. Cambia la Policy di Convalida della Password

Il secondo metodo è cambiare la policy di convalida della password a un livello inferiore. Per farlo, esegui il seguente comando dal prompt MySQL:

mysql> SET GLOBAL validate_password.policy=LOW;

Poi, controlla se la policy è stata cambiata:

mysql> SHOW VARIABLES LIKE 'validate_password%';

Conclusione

In questo tutorial, abbiamo coperto il comune errore MySQL 1819 e come correggerlo. Abbiamo anche discusso come disabilitare la policy delle password per consentire password deboli in alcuni casi. Tuttavia, è sempre raccomandato usare una password robusta per una migliore sicurezza. Buon apprendimento!