回答
在大多数情况下,调用mysql_close
不会有什么区别,性能明智。但是关闭你的程序不再使用的资源(文件句柄,打开的套接字,数据库连接等)总是一个好习惯。
如果您正在做某些可能需要几秒钟的事情 - 例如,从REST API读取和解析数据,这尤其如此。由于API调用正在通过线路,负面的网络状况会导致您的脚本阻塞几秒钟。在这种情况下,在之后,打开数据库连接的适当时间是,REST调用完成并被解析。
总之我的回答,两大规则:
- 只有分配资源(文件句柄,插座,数据库连接等),当你的程序就可以使用它们。
- 您的程序完成后立即释放资源。
使用mysql_close()通常是不必要的,因为非持久打开链接在脚本执行结束时自动关闭。
就个人而言,我总是喜欢以确保我迂腐地接近任何东西,我打开,但它需要不是。
什么是关闭链接的好处? – denniss 2010-07-29 05:36:09
自己关闭链接没有任何好处。 – Charles 2010-07-29 05:49:32
@Charles如果您的脚本在完成使用MySQL后需要一段时间才能完成,那么释放其他脚本可能要使用的连接可能会有所帮助。 – penguin359 2011-11-30 01:51:34
手动says:
使用mysql_close()通常是不必要的,因为非持久打开连杆在脚本的执行的结束时自动关闭。
所以,不,不是真的。在尝试可能消耗大量资源的操作之前释放资源是有帮助的,但它可能不会产生重大影响。
什么是关闭链接的好处?
通常,自己关闭链接没有任何好处,因为它会自动关闭。
我只能想到几个好处
如果你的脚本有很多处理的做它使用数据库完成后,关闭数据库连接过早可能有助于释放一点点内存和其他资源(如MySQL连接),而脚本继续其他事情。这在大多数脚本中都不太可能成为问题,因为大多数脚本在完成数据库连接之后会很快终止,并且在PHP脚本终止之前连接保持打开状态的时间会比较短。
代码的完整性和清洁度。它可以给你一个良好的感觉,并且通常是良好的代码卫生来关闭你打开的东西,尽管在这种情况下它不是技术上需要的。
如果限制连接到数据库的连接数,使用mysql_close()会释放其中一个连接,允许其他脚本访问 – 2010-07-29 10:15:16
关闭链接有什么好处?
好处是,您可以释放与数据库服务器的连接,并在PHP请求清理之前释放数据库服务器中的相应资源。
举例来说,您可以在请求的前20毫秒内查询您的请求需要的所有数据。但是,然后你的PHP代码花费80毫秒运行代码并格式化结果。这意味着80%的时间,该应用程序正在打开一个数据库连接而不需要,并且平均而言,数据库服务器上的10个连接线程中有8个是闲置和使用资源的。
感谢这个答案。从来没有想过这个,但你的简单数学证明了关闭这些连接的巨大优势(至少使它成为标准练习,因为你永远不知道是否可能引入在完成数据库后可能需要运行一段时间的代码) 。 – tyrex 2014-11-14 12:16:09
- 1. 我需要使用mysql_close(连接)吗?
- 2. 我真的需要bindParam吗?
- 3. 我真的需要MVVM吗?
- 4. 是否需要mysql_close和pg_close?
- 5. css BEM - 我们真的需要E吗?
- 6. 我们真的需要Automapper吗?
- 7. Portal:我真的需要一个Portal吗?
- 8. c#vb:我们真的需要System.Lazy吗?
- 9. 我真的需要写这个“SerializationHelper”吗?
- 10. 我真的需要服务层吗?
- 11. 我真的需要散列密码吗?
- 12. Subversion *真的需要ActivePython吗?
- 13. GLSL Renderbuffer真的需要吗?
- 14. mysql_close()是否需要进行REAL优化?
- 15. 连接失败时是否需要mysql_close?
- 16. 我真的需要的.htaccess
- 17. 我需要做一个Git克隆吗?
- 18. 使用分页时,我是否需要使用mysql_free_result&mysql_close? PHP
- 19. 做drawables需要回收吗?
- 20. mysqli - 我真的需要做$ result-> close(); &$ mysqli-> close();?
- 21. 是:悬停真的需要cusor吗?
- 22. Android:真的需要2个字节吗?
- 23. 真的需要galsim boost依赖吗?
- 24. 提取操作符$,真的需要吗?
- 25. CultureInfo.CurrentCulture在String.Format()中真的需要吗?
- 26. scala.util.automata,scala.util.regexp和scala.util.grammar真的需要吗?
- 27. 每桌真的需要PK吗?
- 28. HTML:我们真的需要不同的DocTypes吗?
- 29. 我的iPhone应用程序真的需要锁定吗?
- 30. 我真的需要Ninject.MVC3中的App_Start内容吗?
可能重复[关闭mysql连接重要?](http://stackoverflow.com/questions/880885/is-closing-the-mysql-connection-important) – NewUser 2017-01-09 11:36:10