Um eine Verbindung von einem Client-Rechner zu einer MySQL-Datenbank herzustellen, müssen die Daten bis zu 5 Validierungsebenen durchlaufen. Hier ist ein allgemeiner Fall, in dem sich Client und Server nicht im selben Netzwerk befinden und keine sichere Verbindung verwendet wird:
Stellen Sie zunächst sicher, dass MySQL eine bind-address
verwendet das unterscheidet sich von localhost
es verwendet also eine Schnittstelle und nicht nur lokale Verbindungen.
Auf jeder Ebene müssen die Firewall-Regeln/Berechtigungen zulassen, dass die Verbindung durchgeht. Beachten Sie, dass eine Maschine intern eine andere IP als extern haben kann und oft hat. Das Grundprinzip ist:
Meistens sind die Firewalls richtig konfiguriert. Als letztes Stück fehlt oft der MySQL-Server GRANT
Berechtigungen für die DB
vergeben für den externen Benutzer. Die letzte Syntax ist:
Welches hat oft die Form:
GRANT ALL ON <DB>.* TO '<external_user>'@'<external_ip>' IDENTIFIED BY 'external_password';