Cum să resetați parola rădăcină MySQL sau MariaDB în Linux


Dacă configurați un server de baze de date MySQL sau MariaDB pentru prima dată, sunt șanse să rulați mysql_secure_installation curând după aceea pentru a implementa setările de securitate de bază.

Una dintre aceste setări este parola pentru contul root al bazei de date – pe care trebuie să o păstrați privată și să o utilizați numai atunci când este strict necesar. Dacă uitați parola sau trebuie să o resetați (de exemplu, când un administrator al bazei de date își schimbă rolurile – sau este concediat!).

Acest articol va fi util. Vom explica cum să resetați sau să recuperați parola root MySQL sau MariaDB uitată în Linux.

Deși vom folosi un server MariaDB în acest articol, instrucțiunile ar trebui să funcționeze și pentru MySQL.

Recuperați parola root MySQL sau MariaDB

Pentru a începe, opriți serviciul bazei de date și verificați starea serviciului, ar trebui să vedem variabila de mediu pe care am setat-o anterior:

------------- SystemD ------------- 
# systemctl stop mariadb

------------- SysVinit -------------
# /etc/init.d/mysqld stop

Apoi, porniți serviciul cu --skip-grant-tables:

------------- SystemD ------------- 
# systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
# systemctl start mariadb
# systemctl status mariadb

------------- SysVinit -------------
# mysqld_safe --skip-grant-tables &

Acest lucru vă va permite să vă conectați la serverul bazei de date ca root fără o parolă (poate fi necesar să comutați la un alt terminal pentru a face acest lucru):

# mysql -u root

De atunci, urmați pașii descriși mai jos.

MariaDB [(none)]> USE mysql;
MariaDB [(none)]> UPDATE user SET password=PASSWORD('YourNewPasswordHere') WHERE User='root' AND Host = 'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;

În cele din urmă, opriți serviciul, dezactivați variabila de mediu și porniți serviciul din nou:

------------- SystemD ------------- 
# systemctl stop mariadb
# systemctl unset-environment MYSQLD_OPTS
# systemctl start mariadb

------------- SysVinit -------------
# /etc/init.d/mysql stop
# /etc/init.d/mysql start

Acest lucru va face ca modificările anterioare să intre în vigoare, permițându-vă să vă conectați la serverul bazei de date folosind noua parolă.

rezumat

În acest articol am discutat despre cum să resetați parola rădăcină MariaDB/MySQL. Ca întotdeauna, nu ezitați să utilizați formularul de comentarii de mai jos pentru a ne trimite o notă dacă aveți întrebări sau feedback. Asteptam sa auzim de tine!