Python MySQL 连接池封装类:使用 mysql-connector-pool 驱动
以下是一个简单的 Python 连接 MySQL 的线程池封装类,使用 mysql-connector-pool 驱动:
import mysql.connector.pooling
class MySQLPool:
def __init__(self, host, port, user, password, database, pool_name='mypool', pool_size=5):
self.host = host
self.port = port
self.user = user
self.password = password
self.database = database
self.pool_name = pool_name
self.pool_size = pool_size
self.cnx_pool = self.create_pool()
def create_pool(self):
cnx_pool = mysql.connector.pooling.MySQLConnectionPool(
pool_name=self.pool_name,
pool_size=self.pool_size,
host=self.host,
port=self.port,
user=self.user,
password=self.password,
database=self.database)
return cnx_pool
def execute(self, query, params=None, commit=False):
cnx = self.cnx_pool.get_connection()
cursor = cnx.cursor()
cursor.execute(query, params)
if commit:
cnx.commit()
result = cursor.fetchall()
cursor.close()
cnx.close()
return result
使用方法示例:
db = MySQLPool('localhost', 3306, 'root', 'password', 'mydb', pool_name='mypool', pool_size=5)
result = db.execute('SELECT * FROM mytable')
print(result)
原文地址: https://www.cveoy.top/t/topic/lAoN 著作权归作者所有。请勿转载和采集!