1、应用环境
数据库连接池,主要用于多线程,为了防止多线程同时对数据库进行操作出现混乱。
2、使用
2.1安装
pip install DBUtils
2.2、导入
from dbutils.pooled_db import PooledDB
2.3、创建数据库连接池对象
self.mysql_pool_list = PooledDB(creator=pymysql,#数据库类型
maxcached=200,#最大空闲数
blocking=True,#默认False,即达到最大连接数时,再取新连接将会报错,True,达到最大连接数时,新连接阻塞,等待连接数减少再连接
ping=4,
host=self.MYSQL_HOST, port=self.MYSQL_PORT, user=self.MYSQL_USER,
password=self.MYSQL_PASSWORD,
db=self.MYSQL_DB,
charset='utf8'
)
参数说明:
1.creator:数据库驱动模块,如常见的pymysql,pymssql,cx_Oracle模块。无默认值
2.mincached:初始化连接池时创建的连接数。默认为0,即初始化时不创建连接。(建议默认0,假如非0的话,在某些数据库不可用时,整个项目会启动不了)
3.maxcached:池中空闲连接的最大数量。默认为0,即无最大数量限制。(建议默