为什么我一直有 5/4 个活动的 MySQL 连接?

为什么我一直有 5/4 个活动的 MySQL 连接?

我在 google SQL 上创建了一个 MySQL 5.7 实例,从第一天起,不知何故,我一直有 4/5 个活动连接。

这些连接肯定不是我创建的,而且据我所知,即使不是我使用 SQL 实例,我也必须为这些使用付费。我确实设置了每日备份,但它们每天发生一次,我不明白为什么 Google 提供的备份机制会一直连接到 MySQL 实例。

对此该怎么办?或者这只是其中的一部分?

我在控制面板中看到的内容


诊断。

我已经使用 MySQLWorkbench 运行了以下命令。

SHOW PROCESSLIST; (我用我的 IP 地址隐藏了两个条目)

显示全局状态如'Threads_running';

显示全局状态如'Max_used_connections';

答案1

经过一番挖掘,我找到了一个describe命令,其中说明了有关实例的所有设置:gcloud sql instances describe {instanceName}。在这里,在设置下,我看到我的激活策略设置为始终activationPolicy: ALWAYS,这意味着我的实例始终在运行。

经过进一步阅读,我了解到谷歌保持实例活跃,并且那些活动连接与此相关。

按需使用并不是谷歌提供的服务 -https://issuetracker.google.com/issues/69109113#comment77

答案2

为了帮助诊断情况,请运行以下命令:

SHOW PROCESSLIST;  -- Will show processes (including background threads)
SHOW GLOBAL STATUS LIKE 'Threads_running';  -- num procs actually running
SHOW GLOBAL STATUS LIKE 'Max_used_connections';   -- highwater mark

(我不知道上面的哪一个映射到“活动连接”;我需要备份 MySQL 的想法才能提供帮助。)

(可能是 Google 已将代码添加到 MySQL;因此无法帮助您。)

不管怎样,神秘-5 可能并不是太重要。

更多的

这些屏幕截图没有显示任何活动。

“睡眠”连接导致很少开销;不用担心。观察(通过反复执行 SHOW PROCESSLIST)它们的“时间”;您可能会发现它们增加到 30,然后重置为 0。这意味着它们每 30 秒执行一次。而且,由于您可能错过了它们所做的事情,所以速度相当快。我猜是一些监控查询——这对你有利

相关内容