19 Mai 2012, 04:05:15 *
Willkommen Gast. Bitte einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?

Einloggen mit Benutzername, Passwort und Sitzungslänge
 
   Übersicht   Hilfe Suche Einloggen Registrieren  
Seiten: [1]   Nach unten
  Drucken  
Autor Thema: MySQL für externen Zugriff konfigurieren  (Gelesen 5849 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
Chris
Admin
Forenguru
*****
Beiträge: 2042



WWW
« am: 28 Mai 2009, 23:37:21 »

Wir möchten auf unsere MySQL Datenbanken auch von extern zugreifen um z.B. unseren MySQL Clienten nutzen zu können den wir auf unseren Arbeitscomputer haben oder von einem anderen Server Zugriff auf die Inhalte in der Datenbank zu ermöglichen.

Um den Zugriff von extern auf unsere MySQL Datenbanken zu ermöglichen müssen wir an 3 Stellen die notwendigen Einstellungen vornehmen:

  • MySQL Konfiguration anpassen
  • Die Zugangsberechtigung auf MySQL Ebene anpassen
  • Evtl. Firewalleinstellungen anpassen

Gehen wir es an, der erste Schritt legt den Grundstein, wir lassen MySQl auf extern lauschen.

MySQL konfigurieren

Wir binden den MySQL Server an unsere IP-Adresse, welches wir in der Datei my.cnf vornehmen können:

nano /etc/mysql/my.cnf

Code:
bind-address 192.168.1.123

Bei älteren Versionen müssen wir den Parameter "SkipNetworking" in der my.cnf suchen um diesen durch Auskommentieren zu deaktivieren:

Code:
#SkipNetworking

Dannach starten wir unseren MySQL Server neu:

Code:
/etc/init.d/mysql restart

Soweit so gut, der Server sollte jetzt auf Port 3306 an unsere IP-Adresse lauschen.

MySQL Benutzer-Rechte setzen

Haben wir unseren MySQL Server dazu gebracht externe Verbindungen zu akzeptieren müssen wir nun dem SQL User der von extern zugreifen soll die entspr. Zugriffsberechtigung einräumen, welches wir in den Tabellen "user" und "db" der MySQL DB direkt erledigen.

Dem User die Berechtigung einräumen:

Code:
UPDATE user SET host='%' WHERE user='MEINSQLUSER';

Und die Datenbank für den externen Zugriff freigeben:

Code:
UPDATE db SET host='%' WHERE user='MEINSQLUSER';

In der MySQL Shell können wir dannach ein:

Code:
flush privileges;

durchführen um die Änderungen zu übernehmen. Im phpMyAdmin können wir die Nutzertabellen neu laden um die Einstellungen zu übernehmen oder falls es keine andere Möglichkeit gibt können wir auch kurzerhand ein:

/etc/init.d/mysql reload

durchführen. Damit sollte unser MySQL Benutzer nun von außen Zugriff auf die Datenbank haben.

Firewall Einstellungen prüfen

Sofern wir eine Firewall einsetzen müssen wir dieser mitteilen das von nun an auf Port 3306 MySQL läuft und das wir dort Verbindungen aufbauen möchten. Ob die Verbindung von außen angenommen wird können wir über telnet z.B. von unserem Heimrechner aus prüfen:

Code:
telnet example.com 3306

Erhalten wir die Meldung "Verbindungen fehlgeschlagen" wissen wird das es nicht richtig eingestellt ist und wir können/müssen auf die Suche nach der Ursache gehen und unsere Firewall Einstellungen prüfen.

Fragen und Anregungen zu diesem Howto werden hier gern gesehen.
« Letzte Änderung: 30 Mai 2009, 14:24:50 von Chris » facebook-like.png Gespeichert

Wir auf touchdesign und facebook
Webhosting: Homepage-Kosten.de Webhosting Preisvergleich
E-Commerce: ClickandBuy | Sofortüberweisung
Tags:
Seiten: [1]   Nach oben
  Drucken  
 
Gehe zu:  


Powered by SMF 1.1.16 | SMF © 2006, Simple Machines | Impressum | Datenschutz
Seite erstellt in 0.056 Sekunden mit 20 Zugriffen.