MySQLdb auf WebServer in aktueller Version verwenden...

Probleme bei der Installation?
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

MySQLdb auf WebServer in aktueller Version verwenden...

Beitragvon jens » Montag 11. Juli 2005, 16:11

Ich habe gerade versucht auf Hosteurope einfach eine neuere Version von MySQLdb zu benutzen, indem ich aus python\Lib\site-packages\MySQLdb alles per FTP auf dem Server kopiert hab...

Beim importieren erscheind allerdings nur der Fehler:
this is MySQLdb version (1, 2, 0, 'final', 1), but _mysql is version (0, 9, 1, 'final', 1)


Wenn man sich die MySQLdb\__init__.py anschaut, kann man auch erkennen warum:

Code: Alles auswählen

import _mysql

v = getattr(_mysql, 'version_info', None)
if version_info != v:
    raise ImportError, "this is MySQLdb version %s, but _mysql is version %s" %\
          (version_info, v)


Gut, dachte ich mir kopiere ich auch noch die python\Lib\site-packages\_mysql.pyd mit dazu... Dann sollte doch auch die neuere Version genommen werden. Tut's aber leider nicht. Die Fehlermeldung bleibt gleich :(

Jemand eine Idee was man tun kann?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Montag 11. Juli 2005, 16:32

mysqldb auf dem server kompilieren.. oder wine benutzen um Windows DLL auf Unix Systemen laufen zu lassen ;)
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Montag 11. Juli 2005, 16:48

Da bringst du mich auf eine Idee... Ich dummie hab natürlich die Windows _mysql.pyd genommen. Das kann ja nicht klappen...
Also hab ich nun von meinem Server die _mysql.so genommen.
Nun erhalte ich aber folgenden Fehler:
PyLucid_system/MySQLdb/_mysql.so: undefined symbol: PyObject_GC_Del


Was kann man damit anfangen?

Mir fällt gerade ein... Ich hab auf meinem Server ja Python 2.4... Somit auch MySQLdb für 2.4... Auf Hosteurope ist allerdings 2.2...

Leider gibt es aber nur die MySQLdb v0.9.2 für Python 2.2... Gibt es irgendwo "Backports" ???

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Montag 11. Juli 2005, 18:27

Naja, du kannst Python 2.2 installieren und es dort kompilieren.

Oder mal in Debian oldstable gucken, die haben auch Python 2.2 versionen, allerdings wird da MySQLdb warscheinlich erst recht alt sein.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Dienstag 12. Juli 2005, 06:27

Bei http://packages.debian.org/testing/pyth ... .2-mysqldb bekommt man es compiliert für Python 2.2...

Aber nun erhalte ich den Fehler:
libmysqlclient_r.so.12: cannot open shared object file: No such file or directory

Ich denke die Version wird dazu nicht passen...

Naja, vielleicht lasse ich das lieber mal und basteln mir die Möglichkeiten der fehlenden connection.query() und connection.store_result().fetch_row(maxrows=0, how=1) lieber nach :? (s. http://www.python-forum.de/viewtopic.php?p=20907#20907 )


EDIT: Hat sich erledigt: http://www.python-forum.de/viewtopic.php?p=21063#21063

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]