1. Spróbuj wpisać po prostu mysql , być może uda się wejść bez poświadczeń 😉 Oprócz pustego hasła roota inną opcją jest plik opisany w punkcie 2.
2. W pliku ~/.my.cnf mogą być zapisane dane dostępowe roota. Dzięki niemu podczas dostępu do mysql nie musimy za każdym razem definiować loginu i hasła.
[mysql]
user=root
password=P@ss
3. Przejrzeć historie shella (history). Istnieje opcja, że kiedyś było wpisywane hasło bezpośrednio w komendzie. Można dorzucić grepa na frazę mysql
4. Przejrzeć historię poleceń mysql. Tam również mogą być podane dane dostępowe, które były wpisywane.
~/.mysql_history
5. Sprawdzenie czy proces mysql działa
ps aux | grep mysql
Jeżeli działa to zatrzymujemy usługę: systemctl stop mysqld
i następnie ponownie sprawdzamy listę procesów. Jeżeli już żaden nie działa uruchamiamy serwer bezpośrednio bez praw dostępu (loginy i hasła się nie załadują): /usr/sbin/mysqld –skip-grant-tables
Wówczas możemy uruchomić klienta mysql bez pytania o poświadczenia: mysql
6. Zmiana hasła roota po podłączeniu do serwera:
flush privileges;
alter user 'root’@’localhost’ identified by 'nowehaslo’;
flush privileges;
Po podłączeniu do serwera przeładowujemy sobie poświadczenia – nie wywali nas. Następnie zmieniamy hasło roota i ponownie aktualizujemy poświadczenia.
7. Wyłączenie serwera uruchomionego w punkcie 5:
mysqladmin -u root -pNoweHaslo shutdown
8. Ponowne uruchomienie usługi
systemctl start mysqld