MySQL resetowanie hasła root’a

Poniżej procedura resetowania hasła root’a do baz ydanych MySQL, któa może być stosowana na platformach Windows i Linux.

1. W pierwszej kolejności należy zatrzymać serwer MySQL:

root@server: service mysql stop

2. Uruchamiamy server mysql z poniższymi opcjami:

root@server: mysqld --skip-grant-tables --skip-networking &

W związku z tym, iż powyższe polecenie daje możliwość połączenia do serwera każdemu bez hasła, ze względów bezpieczeństwa uruchamiamy serwer bez sieci, dzięki czemu połączenie do niego jest możliwe tylko lokalnie.

3. Następnie łączymy się z serwerem:

root@server: mysql -u root

4. Z linii komend mysql wykonujemy poniższe polecenie:

mysql> FLUSH PRIVILEGES;

5. Następnie ustawiamy lub uaktualniamy hasło root’a wpisując zamiast „nowehaslo” swoje hasło do serwera MySQL:

mysql> UPDATE mysql.user SET Password=PASSWORD('nowehaslo') WHERE User='root';
Jeżeli resetujemy hasło dla root’a, który może się logować tylko lokalnie wpisujemy poniższe polecenie zamiast wcześniejszego:
mysql> UPDATE mysql.user SET Password=PASSWORD('nowehaslo') WHERE Host='localhost' AND User='root';
6. Przed uruchomieniem serwera musimy jeszcze załadować do pamięci tabelę uprawnień:
mysql> FLUSH PRIVILEGES;

7. Na zakończenie zatrzymujemy serwer i uruchamiamy do bez dodatkowych opcji poniższymi poleceniami:

root@server: /etc/init.d/mysql stop
root@server: service mysql start
Po tych zabiegach będziemy mogli zalogować się do serwera mysql za pomocą nowego hasła:
root@server: mysql -u root -p