基于pymysql的数据库连接池

pymysql-pooling的Python项目详细描述


pymysqlpool

build statuscodecovpip versionlicense

pymysql pool是一个基于pymysql的数据库连接池,简单而轻量级。

目录

功能

  • 默认情况下,保持连接池的最小数量。
  • 如果未使用的连接数小于零,则动态地将连接添加到池中,直到当前数量的UnE连接等于池的最大值。
  • 定期释放空闲连接,直到未使用的连接数等于池的最小值。
  • 支持自动提交模式。
  • 支持ping check以获得正常连接。

要求

  • Python
    • cpython:>;=3.4
  • MySQL服务器--下列之一:
    • MySQL=5.5
    • Mariadb=5.5
  • pymysql:>;=0.9.2

安装

包上载于PyPI

您可以使用pip进行安装

$ pip install pymysql-pooling

示例

使用一个简单的表(例如MySQL doc

mysql>CREATETABLEpet(nameVARCHAR(20),ownerVARCHAR(20),->speciesVARCHAR(20),sexCHAR(1),birthDATE,deathDATE);mysql>INSERTINTOpet->VALUES("Puffball","Diane","hamster","f","1999-03-30",NULL);
frompymysqlpool.poolimportPoolpool=Pool(host=HOST,port=PORT,user=USER,password=PASSWORD,db=DB)pool.init()connection=pool.get_conn()cur=connection.cursor()cur.execute('SELECT * FROM `pet` WHERE `name`=%s',args=("Puffball",))print(cur.fetchone())pool.release(connection)

此示例将打印:

('Puffball', 'Diane', 'hamster', 'f', datetime.date(1999, 3, 30), None)

支持自动提交模式,如下所示:

pool=Pool(host=HOST,port=PORT,user=USER,password=PASSWORD,db=DB,autocommit=True)

就这些。

路线图

  • [X]连接池
  • [X]动态创建
  • [X]动态释放
  • []监控Web界面

资源

许可证

pymysqlpool是根据mit许可证发布的。有关详细信息,请参见许可证。

贡献

感谢您对pymysqlpool的贡献感兴趣,您的帮助和贡献非常宝贵。

您可以提交问题和请求,请在提交请求前提交问题。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java iBatis加载对象列表   Eclipse中的javajboss调试   java Junit@AfterClass(非静态)   java如何用JAXR捕捉WebApplicationException   java Bloom着色器性能   java如何使活动保持活动状态,并每秒通知和运行   Java:是否替换ArrayList中不允许的ArrayList cos基元类型?   java Android Studio,使用PHP数据库文件中的GET用4个随机元素填充列表视图   java Antisamy 1.5.3跨度标记样式属性异常   java在构造函数调用之前或之后通过声明初始化类DS字段?   java从地址中删除重复字   java如何列出FloydWarshall算法中传递的顶点   java如何从不同的文件加载基于springboot的REST应用程序属性?   java HttpSession Url重写无法使用servlet技术正常工作   java为什么在代码中出现“无法创建组件”错误?