MYSQLdb是Python中用來操作MYSQL數據庫的包
地址:http://sourceforge.net/projects/mysql-python/
windows下是一鍵安裝的EXE版本。Linux下需手動安裝,安裝過程碰到一些問題,這裡簡單敘述下Linux下的安裝.
wget http://XXX#下載
tar zvxf XXX.tar.gz#解壓
cd XXX/#進入文件夾
Python setup.py build#報錯
錯誤為:can not find mysql_config
要配置mysql的參數。
find / -name mysql_config#從根目錄開始尋找mysql_config文件
找到,則編輯之前文件site.py:
mysql_config = /usr/bin/XXX
找不到,要下載這兩個包:libmysqld-dev,libmysqlclient-dev
sudo apt-get install ibmysqld-dev
sudo apt-get install libmysqlclient-dev
再修改site.py:
mysql_config.path="/usr/bin/mysql_config"
繼續運行:
Python setup.py build#報錯
錯誤為:command ‘gcc’failed with exit status 1
繼續安裝這兩個包:build-essential,python-dev
sudo apt-get install build-essential
sudo apt-get install python-dev
繼續運行:
Python setup.py build
python setup.py install
(參考blog : http://blog.163.com/rettar@126/blog/static/1216503422012626105639255/ )
MYSQLdb的文檔少的可憐,sourceforge上只有一個英文的簡介,好多功能都自己試出來的。
英文文檔:http://sourceforge.net/p/mysql-python/mysqldb-2/ci/default/tree/doc/MySQLdb.txt#l61
簡單操作:
導入包
import MYSQLdb
建立連接
conn = MySQLdb.connect(host='192.168.1.108', user='mdx', passwd='med', db='mydb', port=3306, charset="utf8")
建立游標對象
cursor = conn.cursor()
執行
sql = ‘select %^*$^&^’
cursor.execute(sql)
獲取返回信息
results = cursor.fetchall()
#這裡的results是列表,數據庫中一行信息為列表中的一個元組。
參數形式輸入
sql = ‘insert into table1 (id, name) values(%s%s)’
param = (10, ‘huang’)
在本地機上寫好的數據庫,要放到服務器端,使用導入和導出,實現這個功能。
首先,本地機上導出數據庫為.sql格式:
可以用mysql workbench 圖形化界面,也可以使用命令行。
mysqldump -uroot -p(password) -h127.0.0.1 database1 > mydb.sql
得到mydb.sql的導出文件
使用FTP把sql文件傳到服務器
再在服務器上導入sql文件:
mysql -uroot -p(password) -h127.0.0.1;
mysql > create database mydb#創建新數據庫
mysql > source mydb.sql#導入sql文件