Verbindung zu DatenbankServer fehlgeschlagen

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

Verbindung zu DatenbankServer fehlgeschlagen

Postby Goliath » 08. September 2006 18:56

Hallo Leuz!

Hab da ein kleines Problemchen sicher kein schweres für euch ;)

Derzeit läuft ein Webserver mit mysql drauf.

Nun wollte ich mal einen Test fahren das mysql auf einen anderen server auszulagern. also mysql in die selben pfade wie am wevserver selber installiert, eine kopie aller configs und dbs rüberkopiert und das teil gestartet. Läuft soweit ohne fehler...wenn ich nun ein in einem php file nen connect auf die netzwerkip vom Testserver mache statts localhost kommt leider die Fehlermeldung "Verbindung zu DatenbankServer fehlgeschlagen". Er kann also nicht verbinden...wieso? ich hab praktisch ein duplikat des aktuellen mysql auf den testserver getan und es funzt nicht. versteh ich nicht :?

Vielleicht kann mir ja einer helfen ich hatte auch schon versucht in der php.ini den default host zu ändern kurz, aber brachte keinen erfolg.

Danke schonmal!
---
mfg Goliath
www.dskag.at
Goliath
 
Posts: 13
Joined: 03. June 2006 18:46

Postby deepsurfer » 08. September 2006 19:16

Er kann also nicht verbinden...wieso? ich hab praktisch ein duplikat des aktuellen mysql auf den testserver getan und es funzt nicht. versteh ich nicht


Ich gehe mal von aus das du den MySQL auf PC2 installiert hast.
Auf PC1 hast du einen Webserver laufen worauf das PHPscript das sich mit der Datenbank verbinden soll.

Da nun das Script auf PC1 läuft muss logischerweise der aufruf "localhost" nicht benutzt werden, denn die Verbindung soll ja zum PC2 gemacht werden.

"Localhost" ist ein fest definierter begriff für die Verbindung auf dem selben Rechner.
Man kann das zwar umbiegen, man sollte das aber nicht machen.
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Postby Goliath » 08. September 2006 19:49

zitat: wenn ich nun ein in einem php file nen connect auf die netzwerkip vom Testserver mache statts localhost kommt leider die Fehlermeldung "Verbindung zu DatenbankServer fehlgeschlagen".



ich benutze variablen im connect also habe ich die variable

$host = "localhost";

gegen

$host = "192.168.1.105";

getauscht. das war mir schon klar ;)
aber just ab dem moment will das script nicht mehr connecten obwohl auf "PC2" der mysql mit der fast selben my.ini (bindip wurde geändert) und den dbs rennt wie vorhher auf "PC1".
---
mfg Goliath
www.dskag.at
Goliath
 
Posts: 13
Joined: 03. June 2006 18:46

Postby Wiedmann » 08. September 2006 20:03

wenn ich nun ein in einem php file nen connect auf die netzwerkip vom Testserver mache statts localhost kommt leider die Fehlermeldung "Verbindung zu DatenbankServer fehlgeschlagen". Er kann also nicht verbinden...wieso?

Wieso?
Wieso gibt dein Script eine erfundene Fehlermeldung aus, und nicht die Fehlermeldung von MySQL?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Goliath » 08. September 2006 20:10

Weil ich das in den "die" meldungen so definiert habe. standart messages von mysql sind nicht so nice ^^
---
mfg Goliath
www.dskag.at
Goliath
 
Posts: 13
Joined: 03. June 2006 18:46

Postby Wiedmann » 08. September 2006 21:35

Weil ich das in den "die" meldungen so definiert habe.

Ich denke mal das war/ist uns alles klar...

standart messages von mysql sind nicht so nice

Dann schlage ich vor, du suchst den Fehler mit deiner "nice message" selber. Da du das so wolltest, scheint dir das ja zu langen zur Fehlersuche ;-)
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Goliath » 09. September 2006 15:12

Naja ohne dieser selbstdefiniterten message käme gar nichts.
---
mfg Goliath
www.dskag.at
Goliath
 
Posts: 13
Joined: 03. June 2006 18:46

Postby Wiedmann » 09. September 2006 18:58

Ich geb dir mal einen Tipp:
Schau dir im PHP-Manual die Beispiele an, und wie da das Fehlerhandling gemacht wird. Evtl. fällt dir auch schon bei den Namen der MySQL-Funktionen was auf.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Goliath » 09. September 2006 21:36

Hmm ok ich hab die mysql befehle nur mit @ gelernt daher kannte ich das nicht ohne -_- . Also in der tat steht dort das der host '***********' nicht auf diesen mysql Server zugreifen darf.

Hmm ich hab ihn aber bei den usern in der mysql db eingetragen. Muß ich etwa noch etwas beachten bei getrennten Web/Datenbankservern? die anderen dbs in 'mysql' sind ja eher nur für erweiterte benutzerverwaltung meines wissens. ich konnte aber hierzu keine hilfreichen tips in selfphp und nem mysql tutorial finden für troubleshooting.
---
mfg Goliath
www.dskag.at
Goliath
 
Posts: 13
Joined: 03. June 2006 18:46

Postby Wiedmann » 09. September 2006 21:53

Hmm ok ich hab die mysql befehle nur mit @ gelernt daher kannte ich das nicht ohne

Ein Grund warum nur das offizielle Manual nimmt und nicht irgendwelche anderen (sonderbaren) Quellen.

BTW meinte ich nicht etwas grundlegendes über PHP, sondern welche MySQL-Funktionen speziell für Fehler da sind...

BTW ist es ein besserer Stil, Fehlermeldunen im Orginal zu copy 'n pasten und nicht interpretiert zu posten.)

Hmm ich hab ihn aber bei den usern in der mysql db eingetragen.

Damit meinst du was?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Goliath » 09. September 2006 23:36

also im browser steht ja welchen host er nicht aufn mysql server connecten läßt also habe ich in der mysql datenbank logischerweise einen user drinnen mit diesem host und halt meinem üblichen user/PW dazu, trotzdem sagt er das dieser host nicht connecten darf. ich frage mich halt nur warum O.o

Hab hab die maschine grad nimmer an.

Aber es war sowas wie :

mysql_connect warning: Der Host 'server1.xxxxx.xxxxx.at' darf nicht auf den mysql server '192.168.x.x' connecten. Fehler in zeile blablabla

ich hab dabei eine copy vom localhost user genommen und nur den host reingesetzt der oben stehend verlangt wird plus noch ein paar andere variationen, doch das scheint er getrost zu ignorieren.
---
mfg Goliath
www.dskag.at
Goliath
 
Posts: 13
Joined: 03. June 2006 18:46

Postby deepsurfer » 11. September 2006 11:21

Mehrer möglichkeiten.... (spüre schon den Nackenschlag von Wiedmann :) )

- Firewall auf PC2 lässt Port 3306 nicht durch

- MySQL-Server auf PC2 ist so konfiguriert das er keinen connect ausserhalb von "127.0.0.1/localhost/eigene IP" Zulässt. (stichwort: my.cnf)

- da Du in deiner nun nicht mehr interpretierten Fehlermeldung abermals etwas weglässt "Fehler in zeile blablabla" so würde eigentlich die weitere Fehlersuche bezogen auf dieses unbekannte "blablabla" weiter gehen. Da wir diese Zeile weder in der Glaskugel noch sonstwoher kennen ist es schwierig darauf zu antworten.
Denn wenn diese Zeile den "mysql_connect" beinhaltet so kann es auch daran liegen das der Zeileninhalt falsch ist, aber ich kann da nur raten.
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Postby Goliath » 11. September 2006 14:53

auf PC2 ist keine firewall (son noob bin ich echt nicht *GG*)

mysql server auf pc2 ist wie oben schon geschrieben so konfiguriert das er sowohl host mit domain, IP und reinen servernamen als host/user in der db mysql zulassen sollte. aber er mag mich nicht :roll:

die fehlermeldung mit blabla bezieht sich auf die zeile mysqlconnect ja, die fehlermeldung beschreibt (im orginaltext), das der fehler beim verbinden zur datenbank auftritt mit einem rechteproblem, es scheitert an den rechten net am verbinden selber :) die frage ist ob bei getrennten web/db servern noch mehr getan werden muß außer dieser host/user eintrag.
In sachen ob die codezeile falsch ist..Ich habe unser Forum genommen in ein temp ordner kopiert und alle $host variablen von localhost auf die IP vom "PC2" umgeschrieben. es hat vorhher alles einwandfrei funktioniert am gemeinsamen Web/DB-Server.

so hier im nachtrag noch der orginaltext:

Warning: mysql_connect(): Host 'server1.dskag.dskag.at' is not allowed to connect to this MySQL server in d:\webserver\temp\entwicklung\ForumClientFunctions.php on line 142

es ist sicher wieder nur irgendeine kleinigkeit ich seh das schon kommen :(
---
mfg Goliath
www.dskag.at
Goliath
 
Posts: 13
Joined: 03. June 2006 18:46


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 7 guests