大家好,又见面了,我是全栈君。
mysql数据库连接池用于连接数据库通道。
在普通模式中,我们操作数据库时,都需要打开一次数据库,查询,修改,删除,再关闭一次数据,对数据库比较不友好。
增加连接池,就减少了重复打开关闭数据库的麻烦。只打开一次数据库,我们只需要连接连接池,关闭连接池就行。省去了重复打开,关闭的麻烦。
在最新版安装连接池需要使用命令
pip install pooled_db进行安装
from dbutils.pooled_db import PooledDB
POOL = PooledDB(
creator=pymysql, # 使用链接数据库的模块
maxconnections=10, # 连接池允许的最大连接数,0和None表示不限制连接数
mincached=3, # 初始化时,链接池中至少创建的空闲的链接,0表示不创建
maxcached=0, # 链接池中最多闲置的链接,0和None不限制
maxshared=3,
blocking=True, # 连接池中如果没有可用连接后,是否阻塞等待。True,等待;False,不等待然后报错
maxusage=None,# 一个链接最多被重复使用的次数,None表示无限制
setsession=[], # 开始会话前执行的命令列表。如:
ping=0, # ping MySQL服务端,检查是否服务可用。
host='127.0.0.1',port=3306,user='root',password='root',database='knowledge',charset='utf8')
def select_test():#查询
db = POOL.connection()#初始化链接池
conn = db.cursor()# 使用cursor()方法获取操作游标
conn.execute("select ……")# 使用execute方法执行SQL语句
data = conn.fetchall()# 使用 fetchone() 方法获取一条数据
db.close()#关闭连接池
return data
def insert_test():#插入
db = POOL.connection()
conn = db.cursor()# 使用cursor()方法获取操作游标
conn.execute("insert ……")# 使用execute方法执行SQL语句
data=db.commit()#注意,插入与查询的区别
db.close()
return data
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/111378.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...