Windows下Python连接数据库(mysql, mongodb)

时间:2023-12-28 20:26:50

一 实验平台

1 os: win7 64位旗舰版sp1

2 python: 2.7.10 x64

二 连接数据库

1 连接 mysql数据库

(1)下载mysql(5.6.25-winx64)

建议下载免安装版, 安装版的容易出现各种问题,解开压缩包,双击bin目录下的mysqld.exe, 启动数据库服务进程, 要关闭的话, 直接到任务管理器里面干掉这个进程就行了

(2)下载并安装navicat(这是一个mysql可视化管理工具, 不是必须的, 但可以方便在用python执行数据库操作的时候, 直观的查看数据库的变化情况)

(3)安装64位python版的mysql类库(MySQL-python-1.2.3.win-amd64-py2.7.exe)

(4)测试代码如下:

import MySQLdb

con = MySQLdb.connect(host='127.0.0.1',user= 'root',passwd='',db='dbname')

cursor = con.cursor()

sql = 'select * from tablename limit 2'

cursor.execute(sql)

row = cursor.fetchall()

for oo in row:

print oo

cursor.close()

con.close()

2 连接mongodb

(1)下载mongodb(mongodb-win32-x86_64-3.0.5)

依然下载免安装版, 这个启动跟mysql启动有些区别, 需要指定数据库文件的存放位置, mongod.exe --dbpath D:\data.(按照这个步骤启动不了的话, 可能就需要先安装KB2731284这个补丁)

(2)下载安装MongoVUE(作用等同于navicat)

(3) 安装64位python版的mongodb类库(pymongo-3.0.3.win-amd64-py2.7.exe)

(4)简单测试代码如下:

import pymongo

con = pymongo.MongoClient(host = '127.0.0.1')

db = con.dbname

table = db.tablename

uu =dict(name = 'user1',age =23,sex= 'female')

table.insert(uu)

u2 = table.find_one({"name":'user1'})

print u2

con.close()