I am running an Ubuntu Server. I would like for it to have a Python (v3.2) CGI script that would connect, and run a query, to the local MySQL database I have set up. Currently,
pymysql - Pure Python MySQL client is very good.
It works with Python 3.x, and doesn't have any dependencies.
This pure Python MySQL client provides a DB-API to a MySQL database by talking directly to the server via the binary client/server protocol.
Example:
import pymysql conn = pymysql.connect(host='127.0.0.1', unix_socket='/tmp/mysql.sock', user='root', passwd=None, db='mysql') cur = conn.cursor() cur.execute("SELECT Host,User FROM user") for r in cur: print(r) cur.close() conn.close()
BlaXpirit's answer above to use pymysql works great! But one small caveat. The link to pymysql in his comment will take you to https://github.com/petehunt/PyMySQL/ which is for python 2.x. If you are using python 3, you want to download and install pymysql3 (version 3.0.5 as of 5/12/12) from http://pypi.python.org/pypi/PyMySQL3/
sqlalchemy supports MySQL and all versions of Python 3. It's nice because you don't have to write SQL; it makes tables look like classes and records look like objects.