MySQL - reset hasła użytkownika root
Jeśli zapomnieliśmy hasła użytkownika root lub innego użytkownika bazy danych to jest bardzo prosty sposób na zresetowanie go. Wszystkie polecenia wykonujemy z konta root systemu operacyjnego.
- Na początek wyłączamy serwer MySQL: /etc/init.d/mysql stop
- Uruchamiamy w tle serwer bazy poleceniem: mysqld_safe --skip-grant-tables --skip-networking &
- Logujemy się na konto root do bazy mysql bez podawania hasła: mysql -uroot mysql
- Następnie w konsoli mysql:
-
mysql> update user set Password=PASSWORD('nasze_nowe_hasło') WHERE User='root'; Query OK, 4 rows affected (0.00 sec) Rows matched: 4 Changed: 4 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> quit; Bye
- Wznawiamy proces z tła poleceniem fg i po pojawieniu się komunikatu: mysqld_safe --skip-grant-tables --skip-networking użyjemy kombinacji CTRL + C, powinien pojawić się:
-
^C130504 21:32:04 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
- Uruchamiamy w normalnym trybie serwer MySQL: /etc/init.d/mysql start
- Na koniec można sprawdzić zresetowane hasło: mysql -uroot -p