4 ms·
MySQL Connector/Python
- ErrantX 17y agoWow, MySQL roll out for our Python software is a complete pain - I cant believe I have never come across this before! Thanks so much! (it's apparently been about for a year - yet i9n all my Googling I never came across it... :()
- jacquesm 17y agoThere's likely to be a bit of a performance penalty though.
- ErrantX 17y agoIm guessing next to network latency it wont be a huge factor. There is some C in there too - I haven't dug too deeply but I am guessing that certain core aspects will be in C for performance reasons. EDIT: I apologise - I believed the Launchpad description which says Python/C. Checking the src it appears to be pure pure python. :)
- jacquesm 17y ago> pure pure python Yep. The benchmarks will be interesting. If they managed to get good performance out of this then I'll be most impressed.
- hapless 17y agoThe MySQL client/server protocol is extremely simple: http://forge.mysql.com/wiki/MySQL_Internals_ClientServer_Protocol http://forge.mysql.com/wiki/MySQL_Internals_ClientServer_Pro... I'd be surprised if there were any performance loss compared to the amount of time required to marshal Python data for calls via the C library.
- lamby 17y ago> MySQL roll out for our Python software is a complete pain Really? How so?
- Goladus 17y agoJust taking a guess, but: mysql client must be installed on every machine mysql python bindings must be compiled and deployed on every machine. I imagine it's not uncommon among Python web apps for the mysql library to be the only thing that requires gcc to compile from source. Having a library entirely in python, for which you presumably already have a deployment process, would definitely simplify things.
- thwarted 17y agoDoes Gentoo really have this level of penetration? How did you get python on the machine in the first place? Any distribution worth using for LAMP already provides everything you need for a base install for this already compiled and packaged. Pure <your favorite language> implementations are useful from a portability, testing/verification, and avoiding vendor lock-in perspective, but the problem of "How do I get the libraries I need on all the machines" has long since been solved. In fact, using a packaging system like dpkg or rpm will make it easy to determine if you're missing anything, since they can list everything that is installed via packages.
- Goladus 17y agoThe last time I checked, Solaris blastwave didn't have a mysql database interface package for Python. I don't know what OS ErrantX is using. He claims that the package provided is unreliable.
- ErrantX 17y agoAs Goladus says it adds a whole list of pre-requisites and a compile stage when installing software. Windows isnt too bad because there is Windows binaries that do work ok. But on Linux the current offerings of MySQL in Python have always been a bit shaky.
- paraschopra 17y agoSame here. I had to use so hard to install MySQLdb. This looks so much promising.
- jcsalterego 17y agoGo Team Python!