mySQLdb - Can't connect

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
bicpi
User
Beiträge: 23
Registriert: Samstag 28. Mai 2005, 12:35

mySQLdb - Can't connect

Beitragvon bicpi » Freitag 3. Juni 2005, 16:56

Hallo, ich benutze das Modul mySQLdb und möchte nun eine Datenbankverbindung aufbauen:

Code: Alles auswählen

MySQLdb.connect(db='idepot', host='localhost', passwd='xxx', user='root')


Dies wird mir nun mit folgendem Fehler quittiert:

Code: Alles auswählen

OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)")
      args = (2002, "Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)")


Die Verbindungsdaten sind natürlich 100x kontrolliert und der Server läuft auch ganz sicher, da nebenher auf dem Server eine große PHP/mySQL-Anwendung erfolgreich läuft.

Was könnte den Verbindungsfehler verursachen?? Gibt es bei Python/mySQL was besonderes zu beachten?

Danke
rayo
User
Beiträge: 773
Registriert: Mittwoch 5. November 2003, 18:06
Wohnort: Schweiz
Kontaktdaten:

Beitragvon rayo » Freitag 3. Juni 2005, 18:15

Hi

Guck mal ob /var/lib/mysql/mysql.sock überhaupt existiert. Wenn nicht such die datei mal auf dem System und mach nen symlink darauf.

Gruss
Gast

Beitragvon Gast » Freitag 3. Juni 2005, 19:24

Das war schon mal eine sehr gute Idee, die Datei lag - wie ichs auch eigentlich kenne *an den Kopf fass* - unter /tmp/mysql.sock :-)
Habe den Link gemacht, nur krieg ich jetzt den Fehler:

Code: Alles auswählen

OperationalError: (1251, 'Client does not support authentication protocol requested by server; consider upgrading MySQL client')
      args = (1251, 'Client does not support authentication protocol requested by server; consider upgrading MySQL client')


Was bedeutet die Meldung genau? Upgraden muss ich doch nicht, habe 4.1.
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 3. Juni 2005, 19:31

Anonymous hat geschrieben:Upgraden muss ich doch nicht, habe 4.1.

MySQLdb ist erst auf Version 1.2.0, wie kannst du da 4.1 haben? In der Fehlermeldung ging es eindeutig um den Client, und vielleicht solltest du tatsächlcih versuchen, MySQLdb zu aktualisieren.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Gast

Beitragvon Gast » Freitag 3. Juni 2005, 19:56

Ist mir auch grad aufgefallen, dass es um den Client geht und wollte das gerade berichtigen..

Ich habe aber die neueste mySQLdb Version heruntergeladen.

Ich hatte Probleme bei der Installation, ich habe mySQL4.1 manuell installiertund mySQLdb liess sich nur mit den mySQL-devel Packeten installieren, da hab ich dann die mitgelieferten von SuSE (9.2) genommen, die sind so bei 4.0.x gewesen, macht das was?

Wie könnte ich mich auf die Fehlersuche begeben?
bicpi
User
Beiträge: 23
Registriert: Samstag 28. Mai 2005, 12:35

Beitragvon bicpi » Samstag 4. Juni 2005, 15:16

Keine Idee? ;-)
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Samstag 4. Juni 2005, 17:38

Ich würde sagen, der Client ist gegen die falschen Devel Libs gelinkt, aber das ist nur eine vermutung.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
bicpi
User
Beiträge: 23
Registriert: Samstag 28. Mai 2005, 12:35

Beitragvon bicpi » Sonntag 5. Juni 2005, 15:07

Das denk ich auch und probier es gleich mit einem frischen System und den mitgelieferten mySQL-Paketen aus.

Eich hab ich immer mySQL selbst installiert (weil neuere Version), habe aber dazu nicht die passenden devels gefunden, liegen die auch auf der mysql.com-Seite rum? Hab schon gesucht...

Viele Grüße, und Danke
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Sonntag 5. Juni 2005, 15:15

bicpi hat geschrieben:Eich hab ich immer mySQL selbst installiert (weil neuere Version), habe aber dazu nicht die passenden devels gefunden, liegen die auch auf der mysql.com-Seite rum? Hab schon gesucht...

Also ich sehs hier. Da sind auch die devel RPMs.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Gast

Beitragvon Gast » Sonntag 5. Juni 2005, 15:21

Code: Alles auswählen

MySQL-devel-4.1.12-1.i386.rpm


Danke ! Habs nicht am Titel erkannt :-)
bicpi
User
Beiträge: 23
Registriert: Samstag 28. Mai 2005, 12:35

Beitragvon bicpi » Sonntag 5. Juni 2005, 16:10

Jetzt steck ich wieder im Dilemma bei der Installation des mysqldb-Moduls.

Habe die Anleitung befolgt:

Code: Alles auswählen

$ tar xfz MySQL-python-1.1.8.tar.gz
$ cd MySQL-python-1.1.8
$ export mysqlversion="4.0.21"
$ export mysqlclient="mysqlclient_r"
$ export mysqloptlibs="ssl crypto"


Die devel-Packete sind nun korrekt in der Version.
Wenn ich nun

Code: Alles auswählen

python setup.py build

ausführe, kommt folgende Fehlermeldung:

Code: Alles auswählen

running build
running build_py
running build_ext
building '_mysql' extension
gcc -pthread -shared build/temp.linux-i686-2.3/_mysql.o -L/usr/lib/mysql -lmysqlclient_r -lpthread -lz -lcrypt -lnsl -lm -lpthread -lmysqlclient_r -o build/lib.linux-i686-2.3/_mysql.so
/usr/lib/gcc-lib/i586-suse-linux/3.3.4/../../../../i586-suse-linux/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1


Mein gcc ist aber korrekt installiert. Was hab ich nun wieder vergessen?
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Sonntag 5. Juni 2005, 18:27

zlib bzw. zlib-devel. Das steht ja schon in der Fahrlermeldung: cannot find -lz, was für libz stehen würde, aber die zlib ist die Ausnahme dieser Regel.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
bicpi
User
Beiträge: 23
Registriert: Samstag 28. Mai 2005, 12:35

Beitragvon bicpi » Sonntag 5. Juni 2005, 18:36

Jetzt hats funktioniert, Danke vielmals !!! :-)

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]