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

Odmowa dostępu dla „użytkownik”@„localhost”

Nie sądzę, że jest to problem z portem, żądanie dociera do celu. Korzystanie z [email protected] zadziała podczas logowania z wiersza poleceń (mysql -u root -p ), ale nie chcesz go używać do łączenia się z kodem. Pamiętaj, że podczas nawiązywania połączenia musisz użyć host=localhost lub host=127.0.0.1 wyraźnie. Jeśli użyjesz adresu IP (nawet na tym samym serwerze), otrzymasz odmowę dostępu.

[[email protected] ~]# mysql --host=127.0.0.1 --protocol=TCP -u root -p
Enter password:
mysql>
[[email protected] ~]# mysql --host=192.168.1.10 --protocol=TCP -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'hostname' (using password: YES)

Oto kroki, które polecam:

  1. Utwórz dedykowanego użytkownika, którego możesz używać do łączenia się w swoich skryptach.
  2. Jeśli źródłem skryptu jest ten sam serwer co MySQL.

    CREATE USER '<user>'@'localhost'
    IDENTIFIED BY 'password';
    GRANT ALL
    ON <database>.*
    TO '<user>'@'localhost';
    
  3. Jeśli połączenie jest zawsze nawiązywane z tego samego miejsca, ale z innej lokalizacji niż MySQL, uruchom następujące polecenie w wierszu poleceń.

    CREATE USER '<user>'@'<IP_address>'
    IDENTIFIED BY 'password';
    GRANT ALL
    ON <database>.*
    TO '<user>'@'<IP_address>';
    
  4. Jeśli źródło połączenia jest inne, uruchom następujące polecenie.

    CREATE USER '<user>'@'<IP_address>'
    IDENTIFIED BY 'password';
    GRANT ALL
    ON <database>.*
    TO '<user>'@'%';
    

Oto link do dokumentacji jeśli masz jakieś pytania.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nieznany błąd kolumny w tej instrukcji MySQL COUNT?

  2. Przydatne wskazówki dotyczące rozwiązywania typowych błędów w MySQL

  3. Jak pobrać wiele wierszy z bazy danych w PHP

  4. MySQL, Błąd 126:Nieprawidłowy plik klucza dla tabeli

  5. Łącznik MySQL w języku Python — znaleziono nieprzeczytane wyniki podczas używania fetchone