- Log in als root op de Windows- of Unix-achtige (Unix, Linux of BSD) machine met de MySQL-server.
- Stop de MySQL-server met een van de volgende opdrachten:
Linux:
/etc/rc.d/init.d/mysql stop
FreeBSD:
/usr/local/etc/rc.d/mysql-server.sh stop
- Open het opstartscript van de mysql-server (d.w.z. mysql-server.sh of mysql, het bestand dat wordt uitgevoerd om de MySQL-server te starten of te stoppen).
- ADD –skip-grant-tables aan het einde van de regel die de mysqld_safe . bevat commando als parameter.
- Start MySQL-server met de volgende opdracht:
Linux:
/etc/rc.d/init.d/mysql start
FreeBSD:
/usr/local/etc/rc.d/mysql-server.sh start
- U kunt ook de MySQL-server rechtstreeks starten en het bewerken overslaan met de volgende opdracht (als u deze stap gebruikt, hoeft u het MySQL-opstartscript niet te wijzigen):
mysqld_safe --skip-grant-tables &
Afhankelijk van uw padomgeving, moet u mogelijk naar de juiste map verwijzen waar mysqld_safe zich in plaats daarvan bevindt.
- Voer de volgende opdrachten uit om in te loggen als de mysql-gebruiker en maak verbinding met de mysql-gebruikers-/machtigingsdatabase:
# mysql -u root mysql
- Voer de update-query's uit om het MySQL-wachtwoord te wijzigen:
mysql> UPDATE user SET Password=PASSWORD('newrootpassword') WHERE User='root'; mysql> FLUSH PRIVILEGES;
Opmerking:vervang newrootpassword met het nieuwe root-wachtwoord voor de MySQL-server. Flush-rechten zijn nodig om de wijziging van het wachtwoord onmiddellijk in te voeren.
- Sluit de mysql-databaseclient af door exit . te typen .
- Stop de MySQL-server met de bij stap 2 vermelde opdrachten.
- Open de mysql server opstartscript edit in stap 3 opnieuw en VERWIJDER de –skip-grant-tables parameter die is toegevoegd.
- Start de MySQL-server met de opdracht uit stap 5 of 6.
Gebruik voor Redhat Linux-gebruikers de volgende instructies als rootgebruiker van de Redhat Linux-machine:
- Stop het MySQL-proces met het commando:
# killall mysqld
- Start de MySQL-server met de volgende opties:
# /usr/libexec/mysqld -Sg --user=root &
- Start de MySQL-client:
# mysql
U zou het volgende bericht moeten zien:
Welkom bij de MySQL-monitor. Commando's eindigen met; of gr.
Uw MySQL-verbindings-ID is 1 naar serverversie:3.xx.xxTyp 'help;' of 'h' voor hulp. Typ 'c' om de buffer te wissen.
mysql>
- Gebruik mysql-database:
mysql> USE mysql
U zou het volgende bericht moeten zien:
Tabelinformatie lezen voor het invullen van tabel- en kolomnamen
U kunt deze functie uitschakelen om sneller op te starten met -ADatabase gewijzigd
- Werk vervolgens het wachtwoord voor de rootgebruiker bij met het volgende commando:
UPDATE user SET password=password("newpassword") WHERE user="root";
Vervang nieuwwachtwoord met uw gewenste wachtwoord. U zou het volgende bericht moeten zien:
Query OK, 2 rijen aangetast (0,03 sec)
Overeenkomende rijen:2 Gewijzigd:2 Waarschuwingen:0De betreffende rijen kunnen verschillen, maar de Query OK zou er moeten zijn.
- Flush de database-privileges om deze opnieuw te laden om de wijzigingen effectief te maken:
mysql> flush privileges;
U zou het volgende resultaat moeten krijgen:
Query OK, 0 rijen beïnvloed (0,02 sec)
- Verlaat de MySQL-client door exit . te typen .
- Sluit het MySQL-serverproces af door killall mysqld . te typen .
- Start MySQL opnieuw:
/etc/init.d/mysqld start