Good to Know Database

Raspbian Wheezy: MySQL-Datenbanken im Netzwerk freigeben


Standardmäßig lauscht der MySQL-Daemon nur auf der Loopback-Schnittstelle 127.0.0.1 auf eingehende Anfragen. Wenn Sie auch von anderen Systemen in Ihrem Netzwerk auf eine MySQL-Datenbank zugreifen wollen, müssen Sie die MySQL-Konfigurationsdatei my.cnf anpassen, gegebenenfalls einen MySQL-Benutzer für den Remote-Zugriff einrichten und die Zugriffsrechte auf die gewünschte Datenbank anpassen.

Öffnen Sie zuerst die MySQL-Konfigurationsdatei mit einem Editor.

pi@raspberrypi ~ $ sudo vi /etc/mysql/my.cnf

Suchen Sie in der Konfigurationsdatei nach der folgenden Zeile.

bind-address            = 127.0.0.1

Da der MySQL-Daemon nicht nur an der Loopback-Schnittstelle lauschen soll, ändern Sie die Zeile wie folgt ab.

bind-address            = 0.0.0.0

Damit die Änderung wirksam wird laden Sie die Konfiguration neu.

pi@raspberrypi ~ $ sudo /etc/init.d/mysql reload

Bis jetzt wurde nur der MySQL-Daemon so konfiguriert, dass er Anfragen auch an den Netzwerk-Schnittstellen entgegen nimmt. Für den Zugriff auf die MySQL-Datenbank wird ein MySQL-Benutzer benötigt welcher vom Client-System zugreifen darf. In diesem Beispiel wollen wir einen neuen Benutzer erstellen. Dazu öffnen Sie auf dem MySQL-Server eine MySQL-Shell.

pi@raspberrypi ~ $ mysql -u root -p mysql

Mit dem folgenden Befehl wird jetzt der Benutzer pi erstellt, welcher sich nur vom Client mit dem Domainnamen raspberrypi512.home.lan anmelden darf. Anstelle des Domainnamen können Sie auch die IP-Adresse Ihres Clients angeben.

mysql> CREATE USER 'pi'@'raspberrypi512.home.lan' IDENTIFIED BY 'StrengGeheim';

Da es in diesem Beispiel noch keine Datenbank auf dem MySQL-Server gibt erstellen wir eine mit dem Namen remote_db. Sollten Sie bereits eine Datenbank angelegt haben, können Sie diesen Schritt überspringen.

mysql> CREATE DATABASE remote_db;

Als nächstes werden die Zugriffsrechte für die MySQL-Datenbank festgelegt. In diesem Fall werden dem Benutzer pi für Zugriffe vom Remote-Client raspberrypi512.home.lan mit dem Passwort StrengGeheim alle Rechte auf die Datenbank und den darin enthaltenen Tabellen erteilt.

mysql> GRANT ALL ON remote_db.* TO pi@'raspberrypi512.home.lan' IDENTIFIED BY 'StrengGeheim';

Nachdem Sie die Zugriffsrechte angepasst haben können Sie die MySQL-Shell wieder schließen.

mysql> QUIT

Zum Überprüfen der Konfiguration öffnen Sie jetzt auf dem Remote-Client eine MySQL-Verbindung zu Ihrem Datenbank-Server und lassen sich zum Beispiel alle Datenbanken anzeigen.

pi@raspberrypi512 ~ $ mysql -u pi -h raspberrypi.home.lan -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 80
Server version: 5.5.28-1 (Debian)

Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| remote_db          |
| test               |
+--------------------+
3 rows in set (0.01 sec)

mysql> QUIT
Bye


Dieser Eintrag wurde am 16.03.2013 erstellt und zuletzt am 25.09.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_36_2145.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer