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

ER_HOST_NOT_PRIVILEGED — kontener dockera nie łączy się z mariadb

Otrzymywany błąd jest spowodowany tym, że MariaDB uważa, że ​​nie masz uprawnień do łączenia się z serwerem. Oznacza to, że nie utworzyłeś użytkownika bazy danych dla aplikacji Node.js lub przydziały dla tego użytkownika są nieprawidłowe.

Niezawodnym sposobem rozwiązania tego problemu jest utworzenie osobnego użytkownika dla aplikacji Node.js. Możesz to zautomatyzować, zapisując następujący kod SQL do pliku i montując wolumin w /docker-entrypoint-initdb.d .

CREATE USER 'my-app-user'@'%' IDENTIFIED BY 'my-app-password';
GRANT ALL ON *.* TO 'my-app-user'@'%';

Zmień odpowiednio nazwę użytkownika i hasło i zmniejsz podane uprawnienia z ALL przywilej. Możesz także zmienić nazwę hosta z symbolem wieloznacznym % na określony adres IP lub nazwę hosta.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Usuń — nie mogę określić tabeli docelowej?

  2. Problem z GRUPOWANIEM WEDŁUG PRZYPADKU

  3. Czy w MySQL występuje operacja all (ustaw podział?) wbudowana?

  4. Kontrola wersji bazy danych dla MySQL

  5. INSERT ... ON DUPLICATE KEY AKTUALIZACJA z GDZIE?