MySQL / MariaDB Verbindung von Außen erlauben
Einleitung
In diesem Beitrag gehe ich kurz darauf ein, wie wir auf unserem Linux Server, auf dem MySQL oder MariaDB läuft,läuft, Verbindungen von AußenAußen zulassen. Dies benötigenbenötigen wir z.B. wenn wir eine Applikation nutzen wollen, die auf einem anderen Server läuftläuft als unsere Datenbank. DafürDafür müssenmüssen wir eine Konfigurationsdatei editieren.
Bedenke: Eine EröffnungEröffnung von neuen Wegen zum Zugriff auf Server stellen immer neue Sicherheitsrisiken dar! Stelle sicher das dass du dir dem Risiko bekanntbewusst ist!bist!
MySQL
Um in MySQL Verbindungen von AußenAußen zu erlauben, müssenmüssen wir die Konfigurationsdatei mit einem Editor unserer Wahl öffnen.öffnen. Ich verwende dazu nano. Dieser ist auf fast allen Linux Distributionen vorinstalliert und lässtlässt sich sehr leicht verwenden.
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Dort müssenmüssen wir den Punkt bind-address finden. Dort müsstemüsste aktuell die localhost Adresse (127.0.0.1) stehen. Diesen Wert ändernändern wir auf 0.0.0.0, um von allen Servern den Zugriff zu erlauben. MöchtenMöchten wir aber, dass der Zugriff nur von einem bestimmten Server möglichmöglich sein soll, setzen wir dort die IP-Adresse des Servers ein.
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 0.0.0.0
Zum Schluss müssenmüssen wir nur noch den MySQL Service neu starten. Danach sollte eine Verbindung möglichmöglich sein.
sudo systemctl restart mysql
MariaDB
In MariaDB funktioniert das fast genauso wie in MySQL. Es verändertverändert sich lediglich nur die Konfigurationsdatei, die wir öffnenöffnen und editieren müssen.müssen. Ich verwende hier wieder nano, um die Konfigurationsdatei zu öffnen.öffnen.
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
Bei dieser Datei müssenmüssen wir auch den Punkt bind-address finden und diese dann auf die IP-Adresse 0.0.0.0 setzen. NatürlichNatürlich könnenkönnen wir hier auch wieder die IP-Adresse des Servers eintragen, welcher Zugriff auf den SQL Server haben soll.
Im Anschluss starten wir auch den MySQL Dienst wieder neu.
sudo systemctl restart mysql