sql >> Database >  >> RDS >> Mysql

Hoe MySQL- of MariaDB-rootwachtwoord opnieuw in te stellen in Linux

Als u voor de eerste keer een MySQL- of MariaDB-databaseserver instelt, is de kans groot dat u kort daarna mysql_secure_installation uitvoert om 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 vereist is. Als u het wachtwoord bent vergeten of het opnieuw moet instellen (bijvoorbeeld wanneer een databasebeheerder van rol verandert - of wordt ontslagen!).

Voorgesteld lezen: MySQL- of MariaDB-rootwachtwoord wijzigen

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 MySQL- of MariaDB-rootwachtwoord

Om te beginnen, stop 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 naar een andere terminal overschakelen om dit te doen):

# 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 vorige wijzigingen van kracht, zodat u verbinding kunt maken met de databaseserver met het nieuwe wachtwoord.

Samenvatting

In dit artikel hebben we besproken hoe je het MariaDB / MySQL root-wachtwoord kunt resetten. Zoals altijd, voel je vrij om het onderstaande reactieformulier te gebruiken om ons een bericht te sturen als je vragen of feedback hebt. We horen graag van je!


  1. Voer alle SQL-bestanden in een map uit

  2. Formaat getal tot op 2 decimalen

  3. CHECK-beperkingen in-/uitschakelen in SQLite

  4. Er is een verbinding tot stand gebracht met de server, maar er is een fout opgetreden tijdens de pre-login-handshake