Atunci când lucrați cu SGBD MySQL, este extrem de important să știți cum să schimbați parola utilizatorului. Se pare că această sarcină poate fi rezolvată numai dacă aveți drepturi de superutilizator. Dar chiar și un utilizator obișnuit poate schimba parola în anumite circumstanțe. În acest articol vă vom spune cum să faceți acest lucru în circumstanțe normale.
Puteți schimba parola unui utilizator în diferite moduri. În mediul MySQL, există două comenzi pentru această sarcină - SET PASSWORD
și ALTER USER
. Să vă spunem despre fiecare dintre aceste două metode în detaliu.
La începutul acestui an, MySQL are două versiuni principale. Prima este învechită, dar încă este susținută (este versiunea 5.7), iar cea mai actuală în acest moment este versiunea 8.0. Cum să aflați versiunea MySQL? Puteți face acest lucru cu o comandă specială, care ar trebui să fie executată în terminal:
$ mysql –version
După cum puteți vedea din imaginea de mai sus, este utilizată versiunea 8.0.28, dar este important să rețineți că ALTER USER
este relevant numai în versiunile anterioare ale MySQL. în versiunile mai noi, puteți utiliza ambele versiuni.
Pentru a intra în consolă, trebuie să vă conectați la MySQL utilizând login-ul și parola. Atunci când un utilizator este deja autorizat pe server, trebuie să efectuați toate acțiunile în numele său. Atunci când MySQL este utilizat pentru prima dată, trebuie să utilizați privilegiile root.
Comanda pentru a vă conecta ca root:
$ mysql -u root –p
După aceasta, va apărea o solicitare de parolă. Rămâne să introduceți parola, apăsați tasta Enter, imediat după aceea se va încărca interfața MySQL cu toate comenzile disponibile.
Particularitatea MySQL este că are o gazdă separată la care este legat un cont. Să notăm cele trei gazde principale:
Localhost permite doar autentificarea locală, fără conectivitate la distanță, % înseamnă că contul poate fi utilizat de la orice gazdă, adresa IP/numele de domeniu înseamnă că contul poate fi utilizat numai la adresa IP/numele de domeniu selectat.
Pentru a afla tipul de gazdă al contului, trebuie să executăm următoarea interogare SQL:
$ SELECT user, host FROM mysql.user
În captura de ecran de mai sus, putem vedea că utilizatorul alex are o gazdă de %. Această gazdă trebuie utilizată atunci când se schimbă parola. Utilizatorii în MySQL și toate informațiile despre utilizatori sunt stocate în baza de date mysql în tabelul user.
De asemenea, puteți modifica parola cu ajutorul comenzii SET PASSWORD
. Pentru a schimba parola pentru utilizatorul alex cu gazda % în somepassword666, trebuie să utilizați următoarea comandă:
$ SET PASSWORD FOR 'alex'@'%' = 'somepassword666';
Puteți schimba codul utilizatorului folosind o altă comandă - ALTER USER
. Pentru a schimba parola pentru utilizatorul alex cu gazda % în altaparola666 vom executa o interogare SQL:
$ ALTER USER 'alex'@'%' IDENTIFIED BY 'anotherpassword666';
Vă rugăm să rețineți că numele de utilizator și gazda sunt incluse în ghilimele simple, fără aceste ghilimele MySQL nu va putea recunoaște șirul.
Acum resetați cache-ul privilegiilor:
$ FLUSH PRIVILEGES;
După ce ați schimbat parola, ați schimbat privilegiul și ați resetat memoria cache, ar trebui să efectuați o verificare a autentificării ca utilizator a cărui parolă a fost schimbată.
Ieșiți din
shell-ul MySQL executând comanda exit
:
$ exit
Acum conectați-vă la shell:
$ mysql -u alex -p
Dacă vedeți promptul sistemului în timp ce vă conectați, ați făcut totul corect, ceea ce înseamnă că parola a fost schimbată cu succes.