Hallo Leute,
ich habe auf meinem Fileserver (mit Debian etch) einen MySQL-Server eingerichtet. Der funktioniert auch gut. Nur von einem Windows-Client (via OpenOffice) kann ich ihn einfach nicht erreichen. Ich bekomme hier jedesmal die Meldung :
[MySQL][ODBC Driver] Can?t connect to MySQL server on "IP-Adresse" (10061)
Leider kann ich damit nichts anfangen. Ob ich die IP-Adr. oder den Hostnamen angebe, ändert an der Fehlermeldung nichts.
ODBC ist auf dem Client installiert und das Verbinden zu einem MySQL-Server unter Windows klappt.
Ich denke, dass die Konfiguration meines MySQL-Servers unter etch nicht stimmt, bzw. nicht alle erforderlichen Pakete installiert sind.
Da ich MySQL das erst Mal auf einer Linuxmaschine installiert habe, ist mein Kenntnisstand leider gering.
Deshalb möchte ich bei Euch nachfragen, welche Pakete unter Debian etch instaliert sein müssen, damit ODBC funktioniert? Kann ich die Funktion irgendwie prüfen z.B. über in Log-Files?
Bis dann
steffen
Hallo Steffen,
ich vermute mal, dass das Problem nicht in den auf beiden Seiten eingesetzten Betriebssystemen zu suchen ist, sondern darin, ob der MySQL-Server so eingerichtet ist, dass Clients sich von anderen Rechnern aus via Netzwerk verbinden dürfen.
Geh mal in die /etc/mysql/my.cnf (alles als root-user), scrool runter zur Zeile
bind-address = 127.0.0.1
(heißt, er soll nur lokal auf Anfragen lauschen) und änder das auf
# bind-address = 127.0.0.1
(auskommentieren, jetzt lauscht er an allen Interfaces inkl. LAN).
Viele Grüße Fabian
Fabian Hänsel schrieb:
Hallo Steffen,
ich vermute mal, dass das Problem nicht in den auf beiden Seiten eingesetzten Betriebssystemen zu suchen ist, sondern darin, ob der MySQL-Server so eingerichtet ist, dass Clients sich von anderen Rechnern aus via Netzwerk verbinden dürfen.
Geh mal in die /etc/mysql/my.cnf (alles als root-user), scrool runter zur Zeile
bind-address = 127.0.0.1
(heißt, er soll nur lokal auf Anfragen lauschen) und änder das auf
# bind-address = 127.0.0.1
(auskommentieren, jetzt lauscht er an allen Interfaces inkl. LAN).
Danke! Ich glaube das war schon mal ein Stück in Richtung Ziel, denn die
jetzige Fehlermeldung sieht schon konkreter aus:
"[MySQL][ODBC Driver] Host 'IP-Adresse' is not allowed to connect to this MySQL server"
Da muss der Host oder der IP-Adressenbereich offenbar noch berechtigt werden. Ehe ich jetzt wieder vergebens suche, frage ich lieber gleich nach dem Wie und Wo.
mfg steffen
Am Sonntag, 20. Januar 2008 20:28:46 schrieb Steffen Weiss:
"[MySQL][ODBC Driver] Host 'IP-Adresse' is not allowed to connect to this MySQL server"
Da muss der Host oder der IP-Adressenbereich offenbar noch berechtigt werden. Ehe ich jetzt wieder vergebens suche, frage ich lieber gleich nach dem Wie und Wo.
Schau mal in der mysql-Datenbank in der Tabelle Users nach. Stichwort hosts.
Tschau,
Falk
Hallo Steffen,
Da muss der Host oder der IP-Adressenbereich offenbar noch berechtigt werden.
Yep. Und wo könntest du danach suchen? Schau dir mal die MySQL-Doku an, gerade wenn du etwas mehr damit vorhast. Die macht einen guten Kompromiss zwischen Vollständigkeit und Übersichtlichkeit.
Danke! Ich glaube das war schon mal ein Stück in Richtung Ziel, denn die jetzige Fehlermeldung sieht schon konkreter aus:
"[MySQL][ODBC Driver] Host 'IP-Adresse' is not allowed to connect to this MySQL server"
Ich werfe mal wieder meine Glaskugel an: Der Fehler liegt bei den Berechtigungen auf MySQL-Ebene. Bei MySQL werden Berechtigungen nicht an User generell vergeben, sondern an User auf bestimmten IPs.
Schauen wir mal, was unser User xyz darf, wenn er von localhost kommt:
mysql> show grants for user xyz@localhost; [Liste was er alles darf]
Was darf er von der Windows-Box aus? (% ist die "MySQL-Variante" vom *, alternativ die IP von der Win-Kiste nehmen, % umfasst alles außer localhost)
mysql> show grants for user xyz@'%' [hier steht jetzt wohl nichts groß]
Also geben wir ihm die nötigen Rechte, z.B.
mysql> grant ALL an unsere_datenbank.* to xyz@'%' identified by 'password';
Jetzt sollte es gehen.
Ehe ich jetzt wieder vergebens suche, frage ich lieber gleich nach dem Wie und Wo.
Das ist der falsche Weg - da lernst du ja nichts. Auf der Liste hier sind viele Leute, die gern helfen, allerdings solltest du es _immer_ zuerst selbst probieren, denn dies ist kein bezahlter Support. Es selbst versucht zu haben ist eigentlich Voraussetzung dafür, dass dir jemand antwortet.
Zur weiteren Fehlersuche (soweit nötig) solltest du es ggf. nicht mit OpenOffice versuchen, sondern mit dem Kommandozeilen-MySQL-Client von der Windows-Box aus - die gibt im allgemeinen die aussagekräftigeren Fehlermeldungen aus.
Viele Grüße Fabian
Nachtrag zu meiner anderen Mail: danach den MySQL-Daemon noch neustarten, damit er mitbekommt, dass wir was geändert haben. In der Shell, wieder als root:
/etc/init.d/mysql restart
Viele Grüße Fabian
lug-dd@mailman.schlittermann.de