(0)目录
一:起因
(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 build sudo python setup.py install
至此,mysql的模块安装完成!
(6)检查MySQLdb 模块是否可以正常导入
>>> import MySQLdb
(7)示例
import MySQLdb # establish connection with mysql conn = MySQLdb.connect(host='localhost',user='root',passwd='root') # get the cursor of operator cur = conn.cursor() # execute sql and create database name/ drop database name cur.execute("""create database if not exists python""") # select database use database conn.select_db('python') # execute and create table cur.execute("""create table test(id int,ifo varchar(100))""") value = [1,"inserted?"] # insert one record cur.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 records cur.executemany("""insert into test values(%s,%s)""",values) # close cursor cur.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