Krok 1
Zatrzymaj bazę danych:
shell> /etc/init.d/mysql stop
Krok 2
Uruchom ponownie bazę danych
- bez uwierzytelniania hasła
- bez połączenia z siecią
Dostęp do bazy danych jest możliwy tylko poprzez jej plik „/var/lib/mysql/mysql.sock”.
shell> mysqld --user=mysql --pid-file=/var/lib/mysql/mysqld.pid \
--socket=/var/lib/mysql/mysql.sock --datadir=/var/lib/mysql \
--skip-grant-tables --skip-networking &
Krok 3
Połącz się z bazą danych i zmień hasło:
shell> mysql --database mysql --socket=/var/lib/mysql/mysql.sock
Jeśli chcesz, pokaż wszystkich użytkowników:
mysql> select User, password from user;
Ustaw nowe hasło:
mysql> update user set password=password('NEW PASS') WHERE User='USERNAME';
Opuść połączenie z bazą danych:
mysql> exit
Krok 4
Zrestartuj serwer bazy danych "normalnie".
shell> kill `cat /var/lib/mysql/mysqld.pid`
shell> /etc/init.d/mysql start