Mysql
 sql >> Base de données >  >> RDS >> Mysql

ER_HOST_NOT_PRIVILEGED - le conteneur docker ne parvient pas à se connecter à mariadb

L'erreur que vous recevez est causée par le fait que MariaDB pense que vous n'êtes pas autorisé à vous connecter au serveur. Cela signifie que vous n'avez pas créé d'utilisateur de base de données pour l'application Node.js ou que les autorisations pour cet utilisateur sont incorrectes.

Un moyen infaillible de résoudre ce problème consiste à créer un utilisateur distinct pour l'application Node.js. Vous pouvez automatiser cela en écrivant le SQL suivant dans un fichier et en montant le volume dans /docker-entrypoint-initdb.d .

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

Modifiez le nom d'utilisateur et le mot de passe en conséquence et réduisez les privilèges accordés à partir de ALL privilège. Vous pouvez également modifier le nom d'hôte générique % à une adresse IP ou un nom d'hôte spécifique.