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

Keine Verbindung zum MySQL-Server auf (IP oder Domänenname)

Wenn Sie MySQL auf Debian normal installieren, wird es so konfiguriert, dass externe Verbindungen zur Datenbank blockiert werden.

Das bedeutet, dass Sie MySQL noch mitteilen müssen, dass der externe Zugriff in Ordnung ist. Dazu müssen Sie die Bind-Adresse für MySQL aktualisieren. Dies wird in my.cnf konfiguriert , die sich auf Debian-basierten Systemen in /etc/mysql/my.cnf befindet .

Suchen Sie dort den Abschnitt mit der Aufschrift

[mysqld]

Darin müssen Sie sicherstellen, dass

  • die Zeile skip-networking ist entweder kommentiert (Kommentare beginnen mit einem '#') oder nicht vorhanden und
  • Bind-Adresse ist entweder auf 0.0.0.0 gesetzt (was der Fall ist, wenn es keine Zeile bind-address gibt) oder an die IP-Adresse Ihres Servers.

Danach sollten Sie Ihren MySQL-Dienst neu starten. Dann müssen Sie einen Benutzer erstellen, dem der Fernzugriff gestattet ist. Dies kann mit einer SQL-Abfrage erfolgen:

GRANT ALL ON yourdatabase.* TO [email protected]'*' IDENTIFIED BY 'yourpassword';

Sie können das Sternchen für die IP-Adresse, von der aus Sie sich verbinden, ausschalten, wenn es jedes Mal gleich ist.

Schließlich müssen Sie Port 3306 (den von MySQL verwendeten Port) in Ihrer Firewall öffnen. Dies ist normalerweise nicht notwendig, da es auf den meisten Systemen bereits geöffnet ist, aber es kann mit dem folgenden iptables-Befehl durchgeführt werden.

/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT
service iptables save

Quelle:1