Steg-för-steg handledning för att lära dig hur du återställer root-lösenordet för en SQL-server.
Den viktigaste användaren av en server MySQL är definitivt användaren"root". Den här användaren har allt administrativa rättigheter databaser (MySQL databases).
Om du inte längre vet vad MySQL root-användarlösenordet är, måste du följa några enkla steg för att återställa lösenordet.
Handledningen är gjord för en server MySQL installerat på operativsystemet CentOS, men processen är densamma för andra distributioner Linux.
Hur man återställer lösenordet för rootanvändaren på en SQL-server
För att återställa lösenordet för root-användaren på en SQL-server är den enklaste metoden att SSH (Secure Shell).
1. Vi loggar in med användaren "root” till systemet som MySQL-servern finns på. (systemets rotanvändare, inte MySQL-servern). Logga in direkt från konsolen eller på distans via anslutning ssh (med kitt från systemen Windows).
2. Stoppa processen / MySQL.
service mysqld stop
eller
/etc/init.d/mysqld stop
Resultatet kommer att bli:
Stopping MySQL: [ OK ]
3. Vi startar MySQL-servern med alternativet "--skip-grant-tables
". Starta MySQL-server/daemon process utan lösenord.
mysqld_safe --skip-grant-tables &
Utdata efter kommandoraden ovan:
[1] 3041
[root@server ~]# Starting mysqld daemon with databases from /var/lib/mysql
4. Vi ansluter till mysql-servern med användaren "root", med hjälp av kommandot:
mysql -u root
Resultatet av kommandot:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1
Server version: 5.0.77 Source distribution
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql>
5. Välj mysql-databasen och ställ in det nya lösenordet för användaren "root".
use mysql;
update user set password=PASSWORD("New_Password") where User='root';
flush privileges;
quit
Resultat från ovanstående kommandon:
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set password=PASSWORD("123456") where User='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 3 Changed: 0 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
[root@server ~]#
6. Vi stoppar och startar om tjänsten/servern MySQL
service mysqld stop
service mysqld start
Resultat:
Starting MySQL: [ OK ]
Bilden nedan visar allt återställning av lösenord processen användarens "root" på servern MySQL.
Nu kan vi ansluta till MySQL (via phpMyAdmin t.ex.) med "root"-användaren, med det nya lösenordet som anges ovan.
Tutorial testad CentOS 5.6 med MySQL Ver 14.12 Distrib 5.0.77, för redhat-linux-gnu (i686) med hjälp av readline 5.1.