Mam problem z MySQL. Zapomniałem hasła, które użyłem, gdy je zainstalowałem więc nie mogę teraz uzyskać dostępu do serwera. Próbowałem usunąć MySQL i zainstalować go ponownie, ale ponownie nie pokazałem hasła. Więc próbowałem zrobić to przez terminal i to jest wynik ... Najpierw zatrzymałem serwer MySQL
wtedy kładę sudo /usr/local/mysql/bin/mysqld_safe –skip-grant-tables
w terminalu
po tym w nowym oknie terminala napisałem sudo /usr/local/mysql/bin/mysql -u root
UPDATE mysql.user SET Password=PASSWORD("root") WHERE User="root";
FLUSH PRIVILEGES;
q
wynikiem był "BŁĄD 2002 (HY000): Nie można połączyć się z lokalnym serwerem MySQL za pośrednictwem gniazda" /tmp/mysql.sock "(2)"
to są wszystkie polecenia
Odpowiedzi:
0 dla odpowiedzi № 1Wypróbuj to polecenie. Uważam, że powinieneś uruchomić mysql. Jeśli to nie działa, spróbuj z mysql zatrzymanym.
sudo mysql_secure_installation
Mam nadzieję, że powinienem poprosić o zmianę hasła.
Ponadto w przypadku błędu gniazda możesz spróbować użyć tego linku. Nie można połączyć się z lokalnym serwerem MySQL za pośrednictwem gniazda '/tmp/mysql.sock' (2)
0 dla odpowiedzi nr 2
Możesz spróbować zresetować hasło roota, uruchamiając MySQL w trybie awaryjnym.
Oto kroki:
Zatrzymaj MySQL:
sudo /usr/local/mysql/support-files/mysql.server stop
Uruchom go w trybie awaryjnym:
sudo mysqld_safe --skip-grant-tables
Będzie to trwała komenda, dopóki proces się nie zakończy, więc otwórz kolejne okno powłoki / terminala i ...
Zaloguj się bez hasła jako root:
mysql -u root
Zaktualizuj hasło roota (i dowolnego innego użytkownika)
FLUSH PRIVILEGES; ALTER USER "root"@"localhost" IDENTIFIED BY "MyNewPass"; q
Zrestartuj MySQL w trybie normalnym
sudo /usr/local/mysql/support-files/mysql.server start
Odniesienie: https://coolestguidesontheplanet.com/how-to-change-the-mysql-root-password/
Uwaga: jest to dość standardowa procedura resetowania, ale po prostu udokumentowana lepiej w powyższym podręczniku w porównaniu do dokumentacji referencyjnej mysql.