基于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第三方库


热门话题
javajexcel包装文本问题   EclipseJavaEnum缩进超过左括号。如何让它看起来更正常?   java有办法包含Tomcat 6 catalina。out和localhost。在网络应用的日志文件中记录内容?   java如何永久性地阻止JavaFX代码在eclipse中被突出显示为错误?   如何在java中优化两个for循环(for循环中的for循环)   java如何在我的windows机器上从jar文件创建mac osx的可执行文件   使用记忆化/动态规划的Java组合学   Java中的游荡对象垃圾收集   java为什么我在JSP和JDBC和MySQL中遇到连接失败错误   java轮询Pod的就绪状态   如何创建电子邮件并将其发送到Java中的特定地址?   java如何修复Dagger 2错误“。。。无法提供[…]”?   java Android单选按钮看起来太轻   Android Studio:开发在应用程序之间共享的通用java库