我有一个shell脚本在mysql数据库中执行一些查询并处理结果并相应地发送邮件。该脚本每15分钟运行24X7。在shell脚本中,我只是使用命令连接到db 'mysql -uusername -ppassword database -s -N -e“有些查询在这里”
我想知道的是,这个脚本是否必须对db连接泄漏做一些事情,因为我正在永远执行这个脚本。 当我执行以下查询时,我可以看到每次Connections值每15分钟增加一次。 显示状态,如'%Con%';
+----------------------------------------+-------+
| Variable_name | Value |
+----------------------------------------+-------+
| Aborted_connects | 4 |
| Com_show_contributors | 0 |
| Connections | 804 |
| Max_used_connections | 152 |
| Performance_schema_cond_classes_lost | 0 |
| Performance_schema_cond_instances_lost | 0 |
| Ssl_client_connects | 0 |
| Ssl_connect_renegotiates | 0 |
| Ssl_finished_connects | 0 |
| Threads_connected | 14 |
+----------------------------------------+-------+
它会在某个时间点崩溃吗?因为价值永远不会下降。我知道该值表示数据库中存在的连接总数。但Max_used_connections保持不变。 或者有没有办法从shell脚本关闭数据库连接?
答案 0 :(得分:4)
正如connections server status variable上的MySQL文档所说:
MySQL服务器的连接尝试次数(成功与否)。
因此,这是一个统计数字,显示自上次重启MySQL服务器以来的连接尝试次数。
threads_connected status variable显示当前打开的连接数(在您的情况下为14)。如果此状态变量等于max_connections server SYSTEM variable,那么您将开始收到太多连接错误消息。