python 数据库连接池_【转】Python 数据库连接池

python编程中可以使用pymysql进行数据库连接及增删改查操作,但每次连接mysql请求时,都是独立的去请求访问,比较浪费资源,而且访问数量达到一定数量时,对mysql的性能会产生较大的影响。因此实际使用中,通常会使用数据库的连接池技术,来访问数据库达到资源复用。

8f13488b56579f2c4752563596028e24.png

python的数据库连接池包:DBUtils

DBUtils提供两种外部接口:

PersistentDB:提供线程专用的数据库连接,并自动管理连接。

PooledDB:提供线程间可共享的数据库连接,并自动管理连接。

DBUtils包安装: pip3 install DBUtils

或者下载 DBUtils 安装包,解压后,使用python setup.py install 命令进行安装

未使用连接池的数据库方法:

48304ba5e6f9fe08f3fa1abda7d326ab.png

48304ba5e6f9fe08f3fa1abda7d326ab.png

def getconn(host, user, passwd, db, sql, port=3306,charset='utf8'):

2 conn = pymysql.connect(host=host, user=user, passwd=passwd, port=port, db=db, charset=charset) #建立连接

3 cur = conn.cursor(cursor=pymysql.cursors.DictCursor) #建立游标并指定游标类型

4 cur.execute(sql) #执行sql

5 if sql.startswith('select'): #判断sql是否是select

6 res = cur.fetchone()

7 else:

8 conn.commit() #insert\delete\update语句执行完毕后需要进行commit

9 res = 88

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值