python用dbutils.pooled_db.PooledDB()连接mysql8.0,怎么设置auth_plugin_map='mysql_native_password'
时间: 2024-11-05 16:30:05 浏览: 58
要使用`dbutils.pooled_db.PooledDB()`连接MySQL 8.0并设置`auth_plugin_map`参数以使用`mysql_native_password`插件,首先确保已经安装了`dbutils`库。如果你还没有安装,可以使用pip来安装:
```shell
pip install dbutils
```
接下来,你可以按照以下步骤配置连接池:
```python
from dbutils.pooled_db import PooledDB
# 设置连接池配置
config = {
"host": "your_host",
"port": your_port,
"user": "your_username",
"password": "your_password",
"database": "your_database",
"charset": "utf8mb4", # 根据你的实际字符集设置
"pool_size": 5, # 连接池大小,可以根据需求调整
"max_overflow": 0, # 最大超出连接数,防止过度占用资源
"pool_recycle": 3600, # 连接空闲多久后自动回收,单位秒
"auth_plugin_map": {"mysql_native_password": "caching_sha2_password"}, # 使用mysql_native_password插件
}
# 创建连接池
pool = PooledDB(
creator=lambda: pymysql.connect(**config), # 使用pymysql模块连接MySQL
mincached=5, # 最小连接数
maxcached=10, # 最大连接数
maxshared=3, # 共享模式的最大连接数
blocking=True, # 阻塞等待连接
maxusage=None, # 连接最大重用次数,默认None永不重用
setsession=[], # 开始会话时执行的SQL命令列表
ping=0, # 检查连接是否可用,0表示不检查
)
# 从连接池中获取连接并执行SQL
with pool.connection() as conn:
cursor = conn.cursor()
cursor.execute("YOUR SQL COMMAND HERE")
# ...
cursor.close()
conn.commit()
# 关闭连接池
pool.dispose()
```
记得替换上述代码中的`your_host`, `your_port`, `your_username`, `your_password`, 和 `your_database`为你自己的MySQL服务器信息。
阅读全文
相关推荐
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.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)
![](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)