Linux下python玩轉MySQLdb

來源:互聯網
上載者:User

標籤:python-mysqldb安裝   linux下mysql安裝   

(0)目錄

VMware 下安裝Ubuntu的吐血經曆

零基礎學習Shell編程

Linux下的makefile的妙用

Linux調試神器 -- gdb

十分鐘學會Python的基本類型

分布式版本管理神器--GIT

GIT檔案的三種狀態 & Git SSH秘鑰問題

十分鐘學習Python的進階文法

配置SSH無密碼訪問及Linux熱鍵、重啟、kill進程

Java的不定長參數和Python的不定長參數對比

Linux下python玩轉MySQLdb

一:起因

(1)Linux下安裝python的第三方模組 ---- MySQLdb,自己走了很多彎路,在此做一下總結,希望對於像我一樣的初學者有所協助

(2)Python中mysql資料庫連接的例子,請見Linux公社 或者 我的個人github原始碼

(3)MySQL-python 1.2.5的,同樣也是pipe python的資源網站

二:MySQLdb在Linux環境中的安裝

(1)Linux 下的安裝mysql資料庫,除了下載安裝包進行安裝外,一般的linux 倉庫中都會有mysql ,安裝命令:

Ubuntu\zyp>>sudo apt-get install mysql-server >>Sudo apt-get install  mysql-client

>>mysql -u root -p 即可檢驗mysql服務和用戶端是否安裝和開啟

(2)MySQL-python驅動模組安裝

:https://pypi.python.org/pypi/MySQL-python/

下載MySQL-python-1.2.5.zip 檔案之後直接解壓。進入MySQL-python-1.2.5目錄:

>>python setup.py install  ----- 報錯誤 

(3-1)Python安裝模組出錯(ImportError: No module named setuptools)解決方案

安裝請看 http://blog.csdn.net/ab198604/article/details/8681851 或者 更加科學的方法

(3-2)提示報錯資訊:mysql_config not found

這個是因為缺少libmysqld_dev, libmysqlclient_dev 兩個開發包引起的

下載缺少的開發包,運行兩個命令:(如果未找到包,請詳細查看更改163源)

 sudo apt-get insatll libmysqld-dev
 sudo apt-get install libmysqlclient-dev

(4)修改原始碼目錄下的setup_posix.py檔案,將mysql_config.path 修改為mysql_config.path="/usr/bin/mysql_config"

再次在原始碼目錄中運行python setup.py build

系統再次提示報錯資訊: error: command ‘gcc‘ failed with exit status 1

需安裝兩個資源檔 : 

sudo apt-get install build-essential sudo apt-get install python-dev
(5)再次會到源檔案目錄執行

sudo python setup.py buildsudo python setup.py install

至此,mysql的模組安裝完成!

(6)檢查MySQLdb 模組是否可以正常匯入

>>> import MySQLdb

(7)樣本

import MySQLdb# establish connection with mysqlconn = MySQLdb.connect(host='localhost',user='root',passwd='root')# get the cursor of operatorcur = conn.cursor()# execute sql and create database name/ drop database namecur.execute("""create database if not exists python""")# select database use databaseconn.select_db('python')# execute and create tablecur.execute("""create table test(id int,ifo varchar(100))""")value = [1,"inserted?"]# insert one recordcur.execute("insert into test values(%s,%s)",value)values=[]for i in range(20):values.append((i,'Hello mysqldb,I am record' + str(i)))# insert multi recordscur.executemany("""insert into test values(%s,%s)""",values)# close cursorcur.close()print "create successfully!"

三:linux操作資料庫命令

(1)建立資料庫

命令:create database <資料庫名>

(2)建立資料庫並分配使用者

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON 
資料庫名.* TO 資料庫名@localhost IDENTIFIED BY ‘密碼‘;

(3)基本操作小結

# common command --- the same to cmd consel ---- mysql -u root -p --# mysql -- show databases; -- create database name -- use dbname --# drop database name -- create table name (id int, name varchar(100)) --# select * from tbname (where) / delete from tbname where -- desc tbname# insert into tbname values(1,'zyp') / update tbname set id=99 where id=9

Linux下python玩轉MySQLdb

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.