Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Connect DATABASE Error TYPE:2002:Berechtigung verweigert

Ich hatte das gleiche Problem, nachdem ich eine neue CentOS 7-Box mit SELinux bekommen hatte. Ich konnte über die Befehlszeile eine Verbindung zu meinem Remote-MySQL-DB-Server herstellen, aber Drupal (und Test-PHP-Skripte) konnte dies nicht.

Es stellte sich heraus, dass das Problem die SELinux-Sicherheitsrichtlinien waren.

Standardmäßig ist die Richtlinie httpd_can_network_connect_db ist deaktiviert (was bedeutet, dass Ihr Webserver nicht kann Kontakt zu einer entfernten DB.)

Überprüfen Sie dies über:

getsebool -a | grep httpd

Wenn httpd_can_network_connect_db ausgeschaltet ist, aktivieren Sie es über:

setsebool -P httpd_can_network_connect_db 1

(Das Flag -P macht die Änderung dauerhaft, sodass die Einstellung einen Neustart überlebt.)