Na moim serwerze za każdym razem, gdy próbuję uzyskać dostęp do MySQL, pojawia się błąd:
Odmowa dostępu dla użytkownika „root” @ „localhost” (przy użyciu hasła: NIE)
kiedy próbuję mysqladmin -u root -p password
, dostaję
Odmowa dostępu dla użytkownika „root” @ „localhost” (przy użyciu hasła: TAK)
Jak mogę uzyskać dostęp do MySQL na moim serwerze Ubuntu 12.04?
-p password
jest nieprawidłowa, musi być,-ppassword
ale nie jest zalecana. Więcej informacji: stackoverflow.com/questions/5131931/...Odpowiedzi:
Jeśli używasz n hosta lokalnego, po prostu wpisz poniższe polecenie w terminalu:
Jeśli używasz zewnętrznego serwera, wprowadź również adres IP hosta (xxx.xxx.xxx.xxx):
Zostaniesz poproszony o podanie hasła, wprowadź je, aby uzyskać dostęp do monitu MySQL.
Możesz także spojrzeć na tę odpowiedź na temat resetowania hasła MySQL.
źródło
5.x
na końcu wersję serwera MySQL, którego używasz. Używam 5.5, więc moim poleceniem będziesudo dpkg-reconfigure mysql-server-5.5
Access denied for user 'root'@'localhost'
. Sugerujesz dzwonieniemysql -u root -p
. Wynikiem tego polecenia jest następująca:Access denied for user 'root'@'localhost'
.sudo mysql -u root -p
działa dla mnie, alemysql -u root -p
nie działaPojawiają się te same objawy podczas aktualizacji, ale dla mnie poprawka (po zabiciu mysql i zrestartowaniu przy użyciu --skip-grant-tables, aby się dostać) to wykonanie
Proces aktualizacji lubi ustawić tę kolumnę na „unix_socket”. Nie wiem, co to ma osiągnąć, ale dla mnie wszystko to psuje.
źródło
mysql_socket
tak, aby wszystko, co było ustawionePASSWORD('xxxxxx')
, nie działało.Ustaw hasło dla mysql
Teraz otwórz terminal i wpisz
podaj hasło i naciśnij enter
źródło
Rozwiązałem mój problem z tym:
Bądź wyjątkowo odpowiedzialny. Dzięki temu rozwiązaniu usuwasz serwer MySql i wszystkie jego dane.
źródło
Tak samo jak Ulrich Metzger, po uaktualnieniu mojego komputera do Ubuntu 16.04 i Mysql-server-5.7, nie mogłem zalogować się z rootem, ponieważ
plugin
kolumna się zmieniła.Mój problem nie został rozwiązany przy
sudo dpkg-reconfigure mysql-server-5.7
+ usuwaniu + czyszczeniu + czyszczeniu.Musiałem zatrzymać usługę mysql:
# sudo service mysql stop
Następnie uruchom ponownie demona mysql z
--no-grant-tables
opcją:# sudo mysqld_safe --no-grant-tables &
Następnie w innym terminalu wprowadź komendę mysql (która teraz nie wymaga uwierzytelnienia)
mysql
i zaktualizuj hasło i kolumny wtyczek poprzez aktualizację SQL:Na koniec zabij
mysqld_safe
polecenie, uruchom ponownie usługę mysql i normalnie połącz się z mysql:źródło
Po aktualizacji z Ubuntu 14.4LTS do 16.4LTS użytkownik root mysql nie mógł się już zalogować z powodu błędnego wpisu w kolumnie wtyczki tabeli użytkowników mysql. Uaktualnienie ustawia wartość wtyczki dla użytkownika root @ localhost na auth_socket, ale poprawnym wpisem musi być hasło mysql_native_password , jeśli wcześniej używane było szyfrowanie natywnego hasła mysql.
źródło