18 Python数据库编程(ubuntu)

本章主要讲解ubuntu下的MySQL数据库的安装与Python数据库编程。

18.1相关软件安装

本节主要内容是安装MySQL服务器、客户端和Python访问MySQL的接口模块三部分内容。

18.1.1 ubuntu下安装MySQL数据库服务器安装

在Linux计算机里安装软件比较容易,一般可以用源码安装,需要去相应软件的网站下载源码、编译再安装,这种方式对使用者的技术水平要求较高;另一种方式是通过软件包.deb下载后用dpkg进行安装;还有一种方式就是在线安装软件,一般用apt-get或aptitude进行安装,这种方式最简单。

安装MySQL服务器软件

$ sudo apt-get install mysql-server

MySQL服务器端安装过程中会弹出设置root帐号密码的对话框,假设密码为123456。

第一次输入root密码后还需再次输入同样的密码确认。

安装MySQL客户端软件

$ sudo apt-get install mysql-client libmysqlclient-dev

18.1.2 MySQLdb的安装

MySQLdb的作用在前一章已经说明,它是Python访问MySQL数据库服务器间的纽带,也就是说Python编程访问MySQL数据库所做的一切操作都得借助MySQLdb模块来完成,所以要想用Python编程操作MySQL数据库需安装MySQLdb模块。

$ sudo pip install mysql-python

如果ubuntu下没有pip,那么可以先安装pipsudo apt-get install python-pip再安装mysql-python。

MySQLdb安装完毕后可以在Shell里启动python测一下MySQLdb是否安装成功。

无任何错误,说明MySQLdb已经安装成功了。

18.2 客户端访问MySQL数据库

这个和前一章里的命令类似,用mysql命令就行,不像windows下使用mysql需要配置环境变量,ubuntu下已经在安装的时候配置好了,直接用即可。

接下来创建库cpython,创建表user,插入数据都和第17章里的一样。

18.3 Python访问MySQL数据库

程序代码和上一章的代码基本一样,仅仅使用了更新数据的update语句。

import MySQLdb
import random
conn = MySQLdb.connect(host = "localhost", user = "root", passwd = "123456", db = "cpython")
cur = conn.cursor()
x = random.randint(1, 100)
sql = "update user set id = %d where id = 3 ;" % x
cur.execute(sql)
conn.commit()
sql = "select * from user;"
cur.execute(sql)
ret = cur.fetchall()
for x in ret:
    print x
cur.close()
conn.close()

程序执行结果:

也可在mysql数据库里查看一下表里的数据是否更新了?

总结

在Linux下使用Python和数据库要比在Windows计算机里使用简单、方便快捷的多,美好的青春都浪费在windows计算机的各类配置上了,老板会哭的,干了一天啥都做出来,用Linux的程序员得给老板创造多少价值啊!所以老板喜欢会用Linux的人!同样的工作Linux程序员分分钟完成,余下的8小时可以取享受阳光和喝咖啡或者奶、茶。