Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi zu externer mySQL Datenbank verbinden... (https://www.delphipraxis.net/26351-zu-externer-mysql-datenbank-verbinden.html)

D_Hartig 22. Jul 2004 12:52


zu externer mySQL Datenbank verbinden...
 
Tag!

So langsam dreh ich hier noch durch. Ich versuch jetzt schon seit gut 2 Stunden mit Zeos eine Verbindung zu nem mySQL Server aufzubauen. Doch leider bekomm ich immer die gleichen Fehlermeldungen. :kotz:

Verwende ich einen lokalen mySQL-Server funktioniert das auch wunderbar. Nur übers Netzwerk will es nicht mehr...

1. "Host blablabla is not allowed to connect to this MySQL-Server" oder
2. "User ODBC@blablabla is not allowed to..."


Lege ich nun einen Benutzer an, funktionierts auch mit diesem nicht. Und was hat das ODBC da überhaupt zu suchen? Da sollte doch Benutzername@Hostname stehen. Oder liege ich da falsch? Muß ich mir noch nen ODBC Treiber installieren? Und wenn ja, welchen?


Noch was zu den Config-Dateien:
Code:
# The MySQL server
[mysqld]
port           = 3306
socket         = /var/lib/mysql/mysql.sock
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
myisam_sort_buffer_size = 8M

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking
Ich hab schon Rechte für den Benutzer vergeben, für die Datenbank, für die Tables, für die Hosts... soviel Rechte und nix bringt was...

Gleich schreib ich das ganze auf'n Stück Papier... Wisch mir den Arxxx damit ab und fertig is.


Habt ihr noch ne Idee?

Gruß
Dominik

franktron 22. Jul 2004 13:00

Re: zu externer mySQL Datenbank verbinden...
 
Hast du auf dei Grossklein schreibung geachtet und bei Host * eingegeben oder den rechnernahmen (auf Gross/Klein) und den MYSQl Server mal neugestartet (brauch er ab und zu mal) und den User nur einmal angelegt und geguckt ob der Server überhaupt Ext. Verbindugen zuläst.

D_Hartig 22. Jul 2004 13:10

Re: zu externer mySQL Datenbank verbinden...
 
Hi

Aaaalllsoooo:

Benutzer ist nur ein mal angelegt.
Host ist nun "*".
Groß/Kleinschreibung wurde beachtet.

rcmysql restart ca. 1000 mal eingetippt.


Wo seh ich ob externe Verbindungen erlaubt sind? Hier?

# The MySQL server
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking


Oder hier

#skip-networking


--> Resultat: will immer noch nicht. Gleiche Fehlermeldung wie vorhin auch.

Dominik

Memo 22. Jul 2004 13:32

Re: zu externer mySQL Datenbank verbinden...
 
Zitat:

Zitat von D_Hartig
So langsam dreh ich hier noch durch.

Dann wird es nie was.

Zitat:

Verwende ich einen lokalen mySQL-Server funktioniert das auch wunderbar. Nur übers Netzwerk will es nicht mehr...
Erkläre doch bitte mal etwas genauer wie du über das Netz zugreifst.

Zitat:

Lege ich nun einen Benutzer an,..
Wo legst du ihn an?

Zitat:

Und was hat das ODBC da überhaupt zu suchen?
Im Augenblick frage ich mich das allerdings auch.

Zitat:

Muß ich mir noch nen ODBC Treiber installieren?
Nein.

Zitat:

Habt ihr noch ne Idee?
So einige.

D_Hartig 22. Jul 2004 13:45

Re: zu externer mySQL Datenbank verbinden...
 
Liste der Anhänge anzeigen (Anzahl: 2)
Zitat:

Erkläre doch bitte mal etwas genauer wie du über das Netz zugreifst.
Also, ich benutze die Zeoslib, um mit meinem Programm auf eine mySQL-Datenbank zuzugreifen.
Auf meinem Entwicklungs-PC hab ich, damit ich den Server nicht dauernd laufen lassen muß mySQL-Server für Windows installiert. Das funktioniert ja auch alles wunderbar. Ich kann mich mit der Datenbank verbinden und alles machen, was das Herz begehrt.

Versuche ich aber nun von meinem Entwicklungs-PC über das Netzwerk auf die Datenbank des Servers zuzugreifen, dann funktioniert das nicht.

Meldung: "Host xxx is not allowed to connect to this MySQL-Server".

Bei den Zeos-Einstellungen stimmt alles: Hostname, User, Passwd, ... alles ok.


Zitat:

Zitat:
Lege ich nun einen Benutzer an,..

Wo legst du ihn an?
Mit phpMyAdmin.

Siehe Screenshot1.



Zitat:

Zitat:
Und was hat das ODBC da überhaupt zu suchen?
Im Augenblick frage ich mich das allerdings auch.
Screenshot2 erklärt, was ich mit ODBC meine.


Dominik

D_Hartig 22. Jul 2004 13:50

Re: zu externer mySQL Datenbank verbinden...
 
Logbuch des Kaptains:

Nachtrag:

Es geht!
Wunderdoll... Und warum?

Benutzername: ODBC (warum auch immer???)
Passwort: 12345

Klasse! Verwende ich nen anderen Benutzer gehts wieder nicht.

Aber immerhin schon mal etwas.


Ich feier jetzt erst mal ne Woche und dann schau ich weiter...


Nachtrag Ende.

Memo 22. Jul 2004 14:20

Re: zu externer mySQL Datenbank verbinden...
 
Schonmal mit root als Benutzername ohne Passwort versucht?

D_Hartig 22. Jul 2004 14:40

Re: zu externer mySQL Datenbank verbinden...
 
Ja hatte ich. Ging aber auch nicht.

Ich hab zwar jetzt eine Lösung, die mich fürs Erste zufrieden stellt. Aber so ganz 100% isses immer noch nicht.

ltiefland 11. Mai 2005 08:31

Re: zu externer mySQL Datenbank verbinden...
 
Ich stehe vor einem ähnlichen Problem. Allerdings kommt bei mir: "Can't connect to MySQL Server on 'excelsior' (10061)"! Was ist denn da wieder los? Die Daten sollten alle stimmen.

ltiefland 15. Mai 2005 20:54

Re: zu externer mySQL Datenbank verbinden...
 
Keiner eine Idee?

Christian Seehase 15. Mai 2005 21:17

Re: zu externer mySQL Datenbank verbinden...
 
Moin Itiefland,

wenn der Fehlercode in diesem Falle auch zutrifft: Connection Refused.

Wird der Zugriff über die Window NT Authentifizierung oder über die des SQL-Servers durchgeführt?
In ersterem Falle könntest Du es mal mit Trusted_Connection=yes im ConnectString versuchen.

ltiefland 15. Mai 2005 21:22

Re: zu externer mySQL Datenbank verbinden...
 
Der Server excelsior läuft unter Linux im lokalen Netzwerk. Wie das dann gemacht wird weiß ich leider nicht. Der MySQL-Server läuft definitiv.

kiar 15. Mai 2005 21:23

Re: zu externer mySQL Datenbank verbinden...
 
hallo,

vllt findet man hier die Lösung

http://www.connectionstrings.com/

raik

bigg 15. Mai 2005 21:52

Re: zu externer mySQL Datenbank verbinden...
 
Kann es vielleicht sein, dass die TCP/IP Steuerung deaktivert ist?
Ist der Dienst nur auf dem Root-Rechner steuerbar?

Vielleicht liegt es auch nur, an einer zu neuen bzw. zu alten Client-Lib.

Um welche Version handelt es sich?

ltiefland 16. Mai 2005 11:46

Re: zu externer mySQL Datenbank verbinden...
 
Auf dem Linux-Rechner läuft 4.1.8! Auf dem Windows-Rechner habe ich 4.1.11 installiert. Als Protokoll verwende ich bei externem Zugriff das allgemeine "mysql", da ich ja nicht ohne weiteres an die Versionsnummer herankomme. Ich verwende die Zeos Komponenten für den Datenbankzugriff. Lokal funktioniert alles einwandfrei.

bigg 16. Mai 2005 12:15

Re: zu externer mySQL Datenbank verbinden...
 
Zitat:

Zitat von ltiefland
Auf dem Linux-Rechner läuft 4.1.8! Auf dem Windows-Rechner habe ich 4.1.11 installiert. Als Protokoll verwende ich bei externem Zugriff das allgemeine "mysql", da ich ja nicht ohne weiteres an die Versionsnummer herankomme. Ich verwende die Zeos Komponenten für den Datenbankzugriff. Lokal funktioniert alles einwandfrei.

Lad dir erstmal den mySQL-Administrator herunter , mit dem funktioniert eine Verbindung tadellos.
Ich vermute mal, dass es an den veralten Zeos liegt und an einer veralten MySQL-Clientlib.

Unter Windows findet man außerdem immer ein gastkonto über das man sich einwählen kann, (ohne Passwort und
Benutzername), deswegen könnte es funktioniert haben.

Mit Passwortschutz wird es sicherlich nicht funktionieren. Alles ohne Gewähr. :zwinker:

ltiefland 16. Mai 2005 12:28

Re: zu externer mySQL Datenbank verbinden...
 
Unter Windows funktioniert es mit Paßwort tadellos. Meine erste Aktion nach der Installation von MySQL besteht grundsätzlich darin ALLE User OHNE Paßwort zu löschen oder zu ändern.

Berserker 16. Mai 2005 12:40

Re: zu externer mySQL Datenbank verbinden...
 
Ich benutze für mySQL-Verbindungen nie ODBC. Versuche mal myDAC von www.crlab.com

Das funktioniert prima.

ltiefland 16. Mai 2005 12:47

Re: zu externer mySQL Datenbank verbinden...
 
Wie kommst Du darauf, daß ODBC im Spiel sei. Dem ist nicht so. Die Zeos Komponenten sprechen MySQL native (über eine DLL) an. Außerdem: Delphi war schon teuer genug. Den Rest möchte ich gerne mit kostenlosen Sachen erledigen. Und: Ich programmiere keine .NET Anwendungen.

bigg 16. Mai 2005 12:59

Re: zu externer mySQL Datenbank verbinden...
 
Zitat:

Zitat von ltiefland
Unter Windows funktioniert es mit Paßwort tadellos. Meine erste Aktion nach der Installation von MySQL besteht grundsätzlich darin ALLE User OHNE Paßwort zu löschen oder zu ändern.

Funktioniert es da mit den zeos?
Hast du dir schon den Administrator besorgt oder ist er bei dir schon installiert?

Teste die Verbinung mal über den Adminitrator.

ltiefland 16. Mai 2005 13:08

Re: zu externer mySQL Datenbank verbinden...
 
Zitat:

Zitat von bigg
Zitat:

Zitat von ltiefland
Unter Windows funktioniert es mit Paßwort tadellos. Meine erste Aktion nach der Installation von MySQL besteht grundsätzlich darin ALLE User OHNE Paßwort zu löschen oder zu ändern.

Funktioniert es da mit den zeos?

Bei lokalem Zugriff klappt alles wunderbar mit den Zeos Komponenten.

Zitat:

Zitat von bigg
Hast du dir schon den Administrator besorgt oder ist er bei dir schon installiert?

Teste die Verbinung mal über den Adminitrator.

Geht auch nicht! Es kommt der gleiche Fehler (auch bei Verwendung der IP anstelle des Namens). Bei localhost ist alles o.k.!

bigg 16. Mai 2005 13:13

Re: zu externer mySQL Datenbank verbinden...
 
Dann prüf mal deine Firewall und/oder die Zugriffsrechte.

ltiefland 16. Mai 2005 13:22

Re: zu externer mySQL Datenbank verbinden...
 
Soweit kommt er ja erst garnicht, denn dann würde er ja sagen: "Access denied ...", oder? Außerdem: Beide Rechner befinden sich hinter meinem Router, sind also im gleichen Netzwerk. Ich habe trotzdem mal, vor ein paar Tagen schon, den Port 3306 im Router freigegeben. Nutzte alles nichts. :cry:

bigg 16. Mai 2005 13:23

Re: zu externer mySQL Datenbank verbinden...
 
Dann poste mal die Fehlermeldung vom Administrator! :lol:

ltiefland 16. Mai 2005 13:28

Re: zu externer mySQL Datenbank verbinden...
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier ist sie. Der Rechner ist über Ping und alle gestarteten Dienste (z. B. Samba, Apache) erreichbar. Das ist es also nicht.

bigg 16. Mai 2005 13:56

Re: zu externer mySQL Datenbank verbinden...
 
Einen Moment das teste ich jetzt mit phpmyadmin! :???:

bigg 16. Mai 2005 14:22

Re: zu externer mySQL Datenbank verbinden...
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich weiss jetzt woran es liegt :???: :lol:
Du hast nicht die nötigen Rechte die Datenbank über eine andere IP-Adresse zu steuern.

Als Benutzer Root ist nur localhost eingetragen. Wenn du alle IP-Adressen damit abdecken willst, solltest du
ein % verwenden.

Die Fernsteuerung über Root ist also standardmässig deaktiviert.

ltiefland 16. Mai 2005 17:44

Re: zu externer mySQL Datenbank verbinden...
 
Nein, das war es auch nicht. Müßte dann nicht die "Access denied ..." Meldung kommen?

bigg 16. Mai 2005 17:49

Re: zu externer mySQL Datenbank verbinden...
 
Das glaub ich schon gar nicht mehr :shock:
Schreib mal bitte auf wie du vorgegegangen bist.

Testet's du immernoch mit den Zeos?
Mach das mal mit phpmyadmin und PHP 5.04, nur um sicher zu gehen.

ltiefland 16. Mai 2005 18:14

Re: zu externer mySQL Datenbank verbinden...
 
Wenn ich mit dem phpMyAdmin auf dem Server teste geht alles. Teste ich aber mit dem phpMyAdmin auf dem Windows Rechner kommt: "Der Server antwortet nicht"!

bigg 16. Mai 2005 18:55

Re: zu externer mySQL Datenbank verbinden...
 
Zitat:

Zitat von ltiefland
Wenn ich mit dem phpMyAdmin auf dem Server teste geht alles. Teste ich aber mit dem phpMyAdmin auf dem Windows Rechner kommt: "Der Server antwortet nicht"!


Du kannst dich also zum Linux-MySQL verbinden? Über beide Rechner mit phpmyadmin?
Im Hauptmenu von phpmyadmin, findest du die rubrik "Rechte" geh mal da drauf
und poste einen Screenshot(s).

/edit:
achso, vom Windows-Rechner zum Linux-Rechner gehts nicht?
Dann stell den Host unter Rechte ein. (Linux -> phpmyadmin -> Localhost)
Geh zum Root-User und schreib anstelle von "localhost" dieses Symbol dort hin "%".

ltiefland 16. Mai 2005 19:30

Re: zu externer mySQL Datenbank verbinden...
 
Das habe ich bereits getan. Übrigens: Andersherum (also vom Linux- zum Windows-Rechner) klappt es einwandfrei?!?

ltiefland 20. Mai 2005 09:46

Re: zu externer mySQL Datenbank verbinden...
 
Hat sich erledigt! Ich habe das ganze mal mit einem anderen Server getestet. Da ging es! Aufgrunddessen habe ich mal im Gentoo-Forum nachgefragt. Der Fehler lag in der /etc/mysql/my.cnf Datei. Dort stand
Zitat:

bind-address=127.0.0.1
. Nach einer Änderung auf
Zitat:

bind-address=0.0.0.0
läuft es jetzt. Trotzdem danke für Eure Hilfe.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz