Zoeken op website

Hoe MySQL of MariaDB root-wachtwoord opnieuw in te stellen in Linux


Als u voor de eerste keer een MySQL- of MariaDB-databaseserver opzet, is de kans groot dat u kort daarna mysql_secure_installation uitvoert om de basisbeveiligingsinstellingen te implementeren.

Een van deze instellingen is het wachtwoord voor het database-rootaccount – dat u privé moet houden en alleen moet gebruiken als dit strikt noodzakelijk is. Als u het wachtwoord vergeet of opnieuw moet instellen (bijvoorbeeld wanneer een databasebeheerder van rol verandert – of wordt ontslagen!).

Voorgesteld lezen: Wijzig het MySQL- of MariaDB-rootwachtwoord

Dit artikel zal van pas komen. We zullen uitleggen hoe u het vergeten MySQL- of MariaDB-rootwachtwoord in Linux kunt resetten of herstellen.

Hoewel we in dit artikel een MariaDB-server zullen gebruiken, zouden de instructies ook voor MySQL moeten werken.

Herstel het MySQL- of MariaDB-rootwachtwoord

Stop om te beginnen de databaseservice en controleer de servicestatus. We zouden de omgevingsvariabele moeten zien die we eerder hebben ingesteld:


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

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

Start vervolgens de service met --skip-grant-tables:


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

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

Hierdoor kunt u als root verbinding maken met de databaseserver zonder wachtwoord (mogelijk moet u hiervoor naar een andere terminal overschakelen):


mysql -u root

Volg vanaf dat moment de onderstaande stappen.


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

Stop ten slotte de service, schakel de omgevingsvariabele uit en start de service opnieuw:


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

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

Hierdoor worden de eerdere wijzigingen van kracht, zodat u met het nieuwe wachtwoord verbinding kunt maken met de databaseserver.

Samenvatting

In dit artikel hebben we besproken hoe je het MariaDB/MySQL root-wachtwoord opnieuw kunt instellen. Zoals altijd kunt u het onderstaande opmerkingenformulier gebruiken om ons een bericht te sturen als u vragen of feedback heeft. Wij horen graag van u!