目录
2-1 方式一、PersistentDB - 每个线程创立一个连接(不推荐)
2-2 方式二、PooledDB - 创建一批连接,供所有线程共享使用(推荐)
一、介绍
DBUtils是一套Python数据库连接池包,并允许对非线程安全的数据库接口进行线程安全包装。
DBUtils是一套工具,提供到数据库的可靠、持久和池连接,可以在各种多线程环境中使用,如Python或其他web应用服务器的web ware。
DBUtils提供两种外部接口:
* PersistentDB :提供线程专用的数据库连接,并自动管理连接。
* PooledDB :提供线程间可共享的数据库连接,并自动管理连接。!!注意!!DBUtils不仅支持mysql数据库模块
1-1 安装
二、DBUtils简单使用 - 两种方式
2-1 方式一、PersistentDB - 每个线程创立一个连接(不推荐)
使用总结
- POOL = PersistentDB() - 实例化池对象,写入池的配置信息;为每个线程创立连接
- conn = POOL.connection() - 池连接
- conn.cursor().execute('select * from user') - 执行SQL语句
- conn.cursor().fetchall() - 获取执行SQL后的返回
- conn.close() - 未关闭连接,只是将连接放回池子,仅供自己的线程再次使用;当线程终止时,连接自动关闭;
from DBUtils.PersistentDB import PersistentDB import pymysql POOL = PersistentDB( creator=pymysql, # 使用链接数据库的模块 maxusage=None, # 一个链接最多被重复使用的次数,None表示无限制 setsession=[], # 开始会话前执行的命令列表。 ping=0, # ping MySQL服务端ÿ