如何关闭 MySQL 中的连接?
How do I close connections in MySQL?
这到底是什么意思:
mysql> show status like "Conn%";
+-----------------------------------+-------+
| Variable_name | Value |
+-----------------------------------+-------+
| Connection_errors_accept | 0 |
| Connection_errors_internal | 0 |
| Connection_errors_max_connections | 0 |
| Connection_errors_peer_address | 0 |
| Connection_errors_select | 0 |
| Connection_errors_tcpwrap | 0 |
| Connections | 16 | <-- This value
+-----------------------------------+-------+
7 rows in set (0.00 sec)
这是我连接的次数,还是打开的连接数?
假设是打开的连接数,如何关闭它们?
dev.mysql.com/doc/refman/5.0/en/server-status-variables.html
好的,感谢 fqdn link 的回答。连接只是过去连接尝试的历史计数。
连接通常由打开它们的人关闭,因此在一般情况下,作为 DBA,您不应该关闭它们。
此外,在大多数情况下 - 如果客户端应用程序崩溃 - 服务器将收到通知(tcp 协议通常会处理)并且连接将自动关闭
但在某些情况下,服务器不会收到有关客户端宕机的通知(例如,整个客户端机器崩溃或中间的某个路由器宕机)。如果这些连接没有被 TCP 通知(超时或保持活动)——那么 MySQL 服务器将在 wait_timeout.
之后关闭它们
如果 DBA 仍想强制关闭某些连接(例如,如果它怀疑某些恶意 activity 或连接卡住或占用了太多资源)- 他们可能会使用 SQL 命令 KILL,然后从输出中使用 process_id显示进程列表
这到底是什么意思:
mysql> show status like "Conn%";
+-----------------------------------+-------+
| Variable_name | Value |
+-----------------------------------+-------+
| Connection_errors_accept | 0 |
| Connection_errors_internal | 0 |
| Connection_errors_max_connections | 0 |
| Connection_errors_peer_address | 0 |
| Connection_errors_select | 0 |
| Connection_errors_tcpwrap | 0 |
| Connections | 16 | <-- This value
+-----------------------------------+-------+
7 rows in set (0.00 sec)
这是我连接的次数,还是打开的连接数?
假设是打开的连接数,如何关闭它们?
dev.mysql.com/doc/refman/5.0/en/server-status-variables.html
好的,感谢 fqdn link 的回答。连接只是过去连接尝试的历史计数。
连接通常由打开它们的人关闭,因此在一般情况下,作为 DBA,您不应该关闭它们。
此外,在大多数情况下 - 如果客户端应用程序崩溃 - 服务器将收到通知(tcp 协议通常会处理)并且连接将自动关闭
但在某些情况下,服务器不会收到有关客户端宕机的通知(例如,整个客户端机器崩溃或中间的某个路由器宕机)。如果这些连接没有被 TCP 通知(超时或保持活动)——那么 MySQL 服务器将在 wait_timeout.
之后关闭它们
如果 DBA 仍想强制关闭某些连接(例如,如果它怀疑某些恶意 activity 或连接卡住或占用了太多资源)- 他们可能会使用 SQL 命令 KILL,然后从输出中使用 process_id显示进程列表