【发布时间】:2018-09-27 09:03:53
【问题描述】:
我正在使用 Peewee ORM 从我的 python 项目中更新和修改数据库表。 我已使用以下方法将最大连接限制设置为 15:
set global max_connections = 15
为了获得总连接,我运行命令,
> select count(*) from information_schema.processlist;
> 12
现在连接限制为 15,即使我通过打开连接运行我的代码在 db 上做一些工作,连接数也会增加 2
> select count(*) from information_schema.processlist;
> 14
现在即使完成任务,我关闭 python 终端我仍然看到来自进程列表计数的连接总数为 14,如果我运行相同的命令来更新数据库,似乎旧连接被重用或什么表,从不同的终端我添加了 2 个连接,但它给出了错误说连接太多。但是我打开的第一个终端仍然可以使用。
如果需要,我可以发布 peewee 代码。
【问题讨论】:
-
我不清楚这里的确切情况。您打开一个终端并保持打开状态,然后打开另一个终端,由于连接太多而无法连接,但是已经打开的第一个终端继续工作......?嗯,是的,这是意料之中的。
-
但是
connect_timeout设置为 10 秒,那么为什么即使 python 终端打开,mariadb 也会保持连接? -
你认为 connect_timeout 有什么作用?
-
如果你重复,它会再次上升 2 并下降 1 吗?还是 1 和 1?
标签: mysql mariadb mariadb-connect-engine