【发布时间】:2013-12-30 22:32:55
【问题描述】:
我正在运行一个 mysql 数据库,并且可以正常连接到它。我的问题是:每当我连接到数据库时(通过 php 添加新输入)我还必须包含断开连接的命令行吗?
我问是因为我的带宽使用量增长得比我预期的要快,所以我很高兴我得到了流量,但也许它正在增长,因为我连接而不是“断开连接”?
【问题讨论】:
标签: mysql command connect disconnect
我正在运行一个 mysql 数据库,并且可以正常连接到它。我的问题是:每当我连接到数据库时(通过 php 添加新输入)我还必须包含断开连接的命令行吗?
我问是因为我的带宽使用量增长得比我预期的要快,所以我很高兴我得到了流量,但也许它正在增长,因为我连接而不是“断开连接”?
【问题讨论】:
标签: mysql command connect disconnect
来自 mysql 文档
mysql 是一个简单的 SQL shell,具有输入行编辑功能。它 支持交互式和非交互式使用。
事实上,SQL shell 不应该对您的机器造成很大的负载。标准做法是关闭 shell 并终止程序。
键入 Control+C 会导致 mysql 尝试杀死当前 陈述。如果这不能完成,或者之前再次键入 Control+C 语句被杀死,mysql 退出
当你退出 mysql 命令行工具时,进程将结束,mysql 将继续做它的事情。但是你的问题的答案是没有 SQL shell 不应该减慢速度。
在 PHP 中,使用完毕后关闭连接是个好主意。要检查哪些进程正在运行,请打开 mysql cmd 工具并尝试以下操作以查看连接到您的 mysql 实例的内容。
SHOW PROCESSLIST
如果 showprocesslist 不是您要找的,请试一试:
mysql > show status like '%onn%';
希望这将为您提供足够的信息来处理流量负载。
【讨论】:
devzone.zend.com:
“打开的连接(和类似的资源)在脚本执行结束时会自动销毁。但是,您仍然应该在不再需要所有连接、结果集和语句句柄时立即关闭或释放它们。这将有助于返回资源到 PHP 和 MySQL 的速度更快。”
我的建议: 完成所需的查询后关闭连接是一种很好的做法。
【讨论】: