mysql-python für Windows und Python 2.5 Download

Installation und Anwendung von Datenbankschnittstellen wie SQLite, PostgreSQL, MariaDB/MySQL, der DB-API 2.0 und sonstigen Datenbanksystemen.
Antworten
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

VORSICHT! Ohne Gewähr und Pistole! :D

MySQL --> mysql-python
MySQL: http://mysql.org/
mysql-python: http://sourceforge.net/projects/mysql-python/
Unoffizieller Python 2.5 Download (UNGETESTET): http://biohackers.net/wikiattach/Python ... -py2.5.exe
...und hier die Diskussion darüber.

lg
Gerold
:-)
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Danke für den Hinweis.

Aber weiß irgend jemand warum MySQL nicht in die Standard-Bibliothek von Python aufgenommen wird?

Das ist die Lib die ich mir immer noch besorgen muss ^^
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sr4l hat geschrieben:Aber weiß irgend jemand warum MySQL nicht in die Standard-Bibliothek von Python aufgenommen wird?
Weil sie nur wenige Leute brauchen. Unter Windows lässt man keine SQL-Server laufen, dort nutzt man SQLite. Und unter anderen Systemen nutzen auch nur Webentwickler MySQLdb, von diesen aber auch nicht alle, denn es gibt ja PostgreSQL.

So habe ich zwar eine Datenbank, nutze aber kein MySQLdb, weil ich PostgreSQL nutze. SO einfach ist das.

Meine Gegenfrage wäre: Was soll ich mit MySQLdb in der Stdlib anfangen?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
BlackJack

Ausserdem müsste es dann jemanden geben, der sich darum kümmert, dass es auch unter allen Betriebssystemen läuft, für die Python von offizieller Seite angeboten wird. Wo das nicht einmal für das Einzelprojekt klappt, dann sehe ich da schwarz. Offenbar gibt's einfach nicht genug Interesse an so einem Modul.
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Okay dann ist es ein spezifisches Problem von mir ^^.
Ich suche sie mir immer sofort raus wenn ich Python neu installiere.

Also MySQLdb ist absolut nützlich, es gibt kein anderes Projekt was sich für Python / MySQL Verbindung kümmert oder?

EDIT:
in der StandardLib kann man ganz einfach das damit anfangen, das man mit MySQL arbeitet. Auf den LAMP Systemen läuft immer MySQL also nutze ich MySQLdb damit Python mit MySQL kommunizieren kann.

Ist natürlich klar das jeder irgend etwas gerne dabei hätte und es dann irgendwann das Lib Verzeichnis sprengen würde.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sr4l hat geschrieben:Okay dann ist es ein spezifisches Problem von mir ^^.
Ich suche sie mir immer sofort raus wenn ich Python neu installiere.
Auch auf Rechnern auf denen kein MySQL läuft oder je laufen wird?
Sr4l hat geschrieben:Also MySQLdb ist absolut nützlich,
Aber eben nur für dich, bzw. nutzer für MySQL. Für den gesammten Rest der Python-Entwickler ist dieses Modul bedeutungslos und eigentlich auch störend.
Sr4l hat geschrieben:es gibt kein anderes Projekt was sich für Python / MySQL Verbindung kümmert oder?
Du kannst versuchen, die MySQL-Libs direkt per ctypes anzusprechen. So etwas ist letztens sehr populär geworden.
Sr4l hat geschrieben:in der StandardLib kann man ganz einfach das damit anfangen, das man mit MySQL arbeitet. Auf den LAMP Systemen läuft immer MySQL also nutze ich MySQLdb damit Python mit MySQL kommunizieren kann.
Und wer das nicht tut? Wer von den Python-Entwicklern nutzt LAMP? Nur eine Minderheit. Viele nutzen eher exotische Kombinationen wie Lighttpd, PostgreSQL, Django, kein-PHP. Oder eben andere Variationen, ohne MySQL. LodgeIt zum Beispile nutzt SQLite und kommt damit aus.
Sr4l hat geschrieben:Ist natürlich klar das jeder irgend etwas gerne dabei hätte und es dann irgendwann das Lib Verzeichnis sprengen würde.
Ist die frage, was das Modulen anderen Leuten bringen würde. Im Falle MySQLdbs nur wenig bis hin zu überhaupt nichts. Es führt aber die von BlackJack angeführten Probleme ein.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Leonidas hat geschrieben:
Sr4l hat geschrieben:es gibt kein anderes Projekt was sich für Python / MySQL Verbindung kümmert oder?
Du kannst versuchen, die MySQL-Libs direkt per ctypes anzusprechen. So etwas ist letztens sehr populär geworden.
Gute Idee, das werde ich auch mal machen. Wollte ehhh mal was nützliches mit ctypes machen. Da ist meine Chance. :-D
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Leonidas: Hattest du mir damals nicht den Link zu einer inoffiziellen 2.5er-Binary gegeben? Die habe ich übrigens seit vielen Wochen problemlos in Benutzung. Dass da aber von offizieller Seite nichts kommt (muss ja nicht AD selbst machen), ist einfach traurig. MySQL ist nun mal sehr verbreitet, nicht zuletzt bei Umsteigern von PHP, und da muss sowas IMHO problemlos verfügbar sein.

Es handelt sich dabei übrigens um Version 1.2.2b2, die man zum Einen laut AD benutzen sollte (s. o.g. Diskussion) und die zum Anderen ein Unicode-Problem behebt.
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Unicode Problem? Das ist gut, muss ich mir sofort anschauen. Habe mit dem alten MySQLdb in Verbindung mit Mysql5 unicode Error bekommen und bin deshalb wieder schnell auf MySQL4 zurück. Konnte zwar ein u"string value" setzen und der Fehler war behoben, aber dann ging es bei MySQL4 nicht mehr :-).
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Y0Gi hat geschrieben:Leonidas: Hattest du mir damals nicht den Link zu einer inoffiziellen 2.5er-Binary gegeben?
Kann sein. Wenn du das noch irgendwo hast, oder die URL dazu kanst du es posten. Ich selbst nutze es nicht, bin PostgreSQL-User. Davon mal abgesehen wäre es für mich sowieso unter Windows uninteressant, da ich mich davor hüte Datenbankserver unter Windows zu bretreiben.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Das Modul habe ich irgendwo, aber die URL so nicht; vielleicht steht die da aber drin, beizeiten mal nachsehen.

Für den Produktiveinsatz werde ich unter Windows auch keine Datenbank betreiben, zum Entwickeln geht's aber gerade noch ;)
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ich weiß gar nicht warum hier immer wieder MySQL so schlecht gemacht wird. Wenn man natürlich genauso gut SQLite nehmen kann, ist das natürlich praktischer.

Vergessen sollte man allerdings nicht, das IMHO MySQL die verbreitetste SQL-Datenbank ist. Das hick-hack mit dem MySQLdb Modul, wirft einfach ein schlechtes Licht auf Python. Das ist wirklich schade.

Das Duale Lizenzsystem bei MySQL sollte eigentlich nicht stören. Es gibt die unter GPL stehende Version und fertig.

Ich für meinen Teil bleibe erstmal bei Python 2.4 und hab damit keine Probleme.

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

jens hat geschrieben:Ich weiß gar nicht warum hier immer wieder MySQL so schlecht gemacht wird.
Komische Lizenzpolitik (ich habe irgendwie Angst, dass die irgendwann mal gar keine Storage-Engines mehr haben) außerdem bin ich mit PostgreSQLs Lizenz viel sicherer unterwegs, weniger Features, schlechte Anbindung zu Python (ich erinnere, es gibt inzwischen vier Bindings für PostgreSQL).

Klar, MySQL wird langsam besser, aber letztendlich implementieren sie das, was PostgreSQL schon länger kann.

(Und ob man Stored Procedures nutzten sollte oder nicht ist natürlich noch eine andere Sache)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Moe479
User
Beiträge: 1
Registriert: Donnerstag 1. März 2007, 08:18

*galgen humor an*

naja zumindest bringt es die leute in foren zusammen, denn nur wegen mysql für python2.5 unter win32 (MySQL-python.exe-1.2.1_p2.win32-py2.5.exe) bin ich hier gelandet :)

*in motzmodus wechsel*

das ist erstmal totaler bockmist zu sagen, dass zuwenige mysql benutzen wollen würden, mit einer ständigen verfügbarkeit einer bibliothek steigt auch deren aktzeptanz ... gerade wenn es sich um standard-sachen handelt.
dieses forum hier zb läuft doch auch nur mit mysql unterstüzung durch php.

ich zb. betreibe einen gameserver unter win32 und habe auch ein cms samt forum laufen was eine mysqldb benutzt ... was garnicht so selten sein soll ...
ich möchte mittels python2.5 den gameserver etwas erweitern zb. einem spieler nachdem er sich eingeloggt hat sagen, dass er im forum ne pm bekommen hat ... ohne mysql unterstützung geht sowas nur über unschöne umwege wie zb. durch ständiges auswerfen einer plaintextfile die accountnamen und aktuelle pn-anzahl enthält durch das verwendete cms/forum :roll:

da ist eine solche lib schon sehr sehr nützlich ... denn ich will meinen gameserver erweitern und nicht mein cms auf eine andere datenbank trimmen wofür python vieleicht mal ne lib mitbringt. hätte ich die nicht bald bekommen währe mir python einfach zuwiedergewesen und ich währe aus frust warscheinlich delphi :roll: umgestiegen.

*wieder feundlich werd*

danke gerold für den download-link :wink:
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Hallo Moe479, willkommen im Forum,
Moe479 hat geschrieben:dieses forum hier zb läuft doch auch nur mit mysql unterstüzung durch php.
Stimmt - aber PHP ist genau für den Webbereich entwickelt worden und ich denke dass die meisten PHP-Entwickler früher oder später sich an eine Datenbank verbinden wollen. Das ist in Python nicht der Fall - Python verfolgt einen generelleren Ansatz und da wird eben auch vermieden Vendor-Lock-In zu betreiben. Stellt euch vor, MySQLdb würde in Python integriert werden - dann würden sicherlich viele kommen und auch psycopg in Python haben wollen und eine Anbindung an Firebird usw.

Das Modul ``sqlite3`` ist in python deswegen, weil man manchmal eine kleine SQL-Datenbank braucht die Anspruchslos ist. SQLite ist ausreichend klein um mitgelierfert zu werden (d.h. man braucht um SQLite zu benutzen nur Python), was bei den "normalen" DBMS schon nicht mehr der Fall ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Es geht ja nicht darum, wie verbreitet MySQLdb ist, sondern ob es als Standardmodul Sinn ergibt. Das Argument, dass man es dann bei Gebrauch nicht selbst installieren muss, ist eine sehr schwaches; andere Pakete muss man auch nachinstallieren (was mit setuptools angenehm geht), von MySQL selbst ganz zu schweigen.

Zudem gibt es zu MySQL noch zahlreiche, auch häufig genutzte Alterternativen - sollen die auch alle mit aufgenommen werden? Und das betrifft nur RDBMS. Was ist z.B. mit den zahlreichen Template-Engines, von denen auch einige sehr verbreitet sind? Und das, obwohl nur ein Teil Python für Webanwendungen verwendet? Und GUI-Toolkits wie wxPython? Und so weiter...

Von Bedeutung ist auch die Reife und Vollständigkeit eines Pakets. Etwas aktiv entwickeltes in die Stdlib aufzunehmen, würde stets unterschiedliche installierte Versionen bedeuten und sogar erfordern, nachträglich eine weitere, aktuelle Version parallel zu installieren. Und das bedeutet Probleme.
Antworten