pymysql连接池
时间: 2024-06-05 09:04:29 浏览: 16
pymysql是Python中用来连接MySQL数据库的一个库,而连接池则是一种管理数据库连接的技术,可以在多个请求之间共享数据库连接,提高了数据库访问效率。
pymysql连接池可以通过将已经建立好的连接存入一个池子中,当有新的请求来临时,直接从池子中获取连接,这样就避免了频繁创建、断开连接,从而提高了程序的性能。同时,连接池还可以设置最大连接数和最小连接数,当连接数达到最大值时,新的请求就会等待有连接被释放后再次获取。
pymysql连接池的使用方法如下:
```
import pymysql
from DBUtils.PooledDB import PooledDB
pool = PooledDB(
creator=pymysql, # 使用pymysql作为数据库的链接库
maxconnections=6, # 最大连接数
mincached=2, # 初始化时连接池中至少创建的空闲的链接,默认0
maxcached=5, # 链接池中最多闲置的链接数,超过这个数后将被关闭,默认0
maxshared=3, # 链接池中最多共享的链接数量,默认0
blocking=True, # 连接池中如果没有可用连接后,是否阻塞等待。True表示等待,False表示不等待返回异常
maxusage=None, # 单个链接最多被使用次数,None表示无限制,默认None
setsession=[], # 开始会话前执行的命令列表,默认为空
ping=0, # ping MySQL服务端,检查服务是否可用,默认为0表示不检查
host='127.0.0.1',
port=3306,
user='root',
password='root',
database='test'
)
conn = pool.connection() # 从连接池中获取一个连接
cursor = conn.cursor()
sql = "SELECT * FROM table"
cursor.execute(sql)
result = cursor.fetchall()
cursor.close()
conn.close() # 注意:使用完后需要将连接释放回连接池
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)