Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL nie działa na:mysql BŁĄD 1524 (HY000):Wtyczka 'auth_socket' nie jest załadowana

Mam rozwiązanie!

Podczas resetowania hasła roota w kroku 2) zmień również wtyczkę auth na mysql_native_password :

use mysql;
update user set authentication_string=PASSWORD("") where User='root';
update user set plugin="mysql_native_password" where User='root';  # THIS LINE

flush privileges;
quit;

Umożliwiło mi to pomyślne zalogowanie się!

Pełne rozwiązanie kodu

1. uruchom polecenia bash

1. najpierw uruchom te polecenia bash

sudo /etc/init.d/mysql stop # stop mysql service
sudo mysqld_safe --skip-grant-tables & # start mysql without password
# enter -> go
mysql -uroot # connect to mysql

2. następnie uruchom polecenia mysql => skopiuj i wklej to ręcznie do CLI

use mysql; # use mysql table
update user set authentication_string=PASSWORD("") where User='root'; # update password to nothing
update user set plugin="mysql_native_password" where User='root'; # set password resolving to default mechanism for root user

flush privileges;
quit;

3. uruchom więcej poleceń bash

sudo /etc/init.d/mysql stop 
sudo /etc/init.d/mysql start # reset mysql
# try login to database, just press enter at password prompt because your password is now blank
mysql -u root -p 

4. Problem z gniazdem (z twoich komentarzy)

Gdy zobaczysz gniazdo błąd, społeczność przedstawiła 2 możliwe rozwiązania:

sudo mkdir -p /var/run/mysqld; sudo chown mysql /var/run/mysqld
sudo mysqld_safe --skip-grant-tables &

(dzięki @Cerin)

Lub

mkdir -p /var/run/mysqld && chown mysql:mysql /var/run/mysqld  

(dzięki @Peterowi Dvukhrechensky'emu)

Ślepe ścieżki i możliwe błędy krawędzi

Użyj 127.0.0.1 zamiast localhost

mysql -uroot # "-hlocalhost" is default

Może prowadzić do „brakującego pliku” lub błędu slt.

mysql -uroot -h127.0.0.1

Działa lepiej.

Pomiń problem z gniazdem

Znalazłem wiele sposobów na stworzenie mysqld.sock plik, zmień prawa dostępu lub dowiązanie symboliczne. W końcu nie o to chodziło.

Pomiń my.cnf plik

Problemu też nie było. Jeśli nie masz pewności, to może ci pomóc .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLSTATE[HY000] [2002] Próba połączenia nie powiodła się.. - Podczas próby połączenia z serwera lokalnego na zdalny

  2. Jak wstawić, jeśli wiersz nie istnieje (UPSERT) w MySQL?

  3. Łączenie się z bazą danych MySQL w .NET

  4. Pobieranie zrzutu MySQL z wiersza poleceń

  5. Jak monitorować wdrożenia MySQL za pomocą Prometheus i Grafana w ScaleGrid?