mysql_connect“bool $new_link = true”很慢

发布于 2024-08-26 07:46:48 字数 484 浏览 6 评论 0原文

我在 64 位 Win7 上使用最新版本的 Xampp。 问题是,当我使用 mysql_connect 并将“bool $new_link”设置为 true 时,如下所示:

mysql_connect('localhost', 'root', 'my_password', TRUE);

脚本执行时间急剧增加(每个连接大约 0.5 秒,当我有 4 个不同的对象使用不同的连接时,需要大约 2 秒)秒)。

将“bool $new_link”设置为 true,通常是一个坏主意,或者可能只是我的软件配置出现问题。

谢谢。

//编辑: 我正在使用新链接,因为我有多个使用 mysql 连接的对象(可以在现有对象中创建新对象等)。最后,当涉及到取消设置对象时(我的 __destruct() 函数中有 mysql_close ),我认为正确清理未解决问题的唯一方法是所有对象都有自己的连接变量。 我刚刚格式化了我的电脑,所以配置应该是默认配置。

I'm using latest version of Xampp on 64bit Win7.
The problem is that, when I use mysql_connect with "bool $new_link" set to true like so:

mysql_connect('localhost', 'root', 'my_password', TRUE);

script execution time increases dramatically (about 0,5 seconds per connection, and when I have 4 diffirent objects using different connections, it takes ~2 seconds).

Is setting "bool $new_link" to true, generally a bad idea or could it just be some problem with my software configuration.

Thank you.

//Edit:
I'm using new link, because I have multiple objects, that use mysql connections (new objects can be created inside already existing objects and so on). In the end, when it comes to unsetting objects (I have mysql_close inside my __destruct() functions), I figured, that the only way to correctly clean up loose ends would be that all objects have their own connection variables.
I just formated my PC so configuration should be default conf.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

凉城已无爱 2024-09-02 07:46:48

除非您需要一个连接(例如,同时访问多个数据库),否则不要打开新连接。

另外,您不必显式调用 mysql_close。我通常只包含一个函数来快速检索现有的数据库链接(如果尚不存在,则检索新的链接)。

function &getDBConn() {
    global $DBConn;
    if(!$DBConn) $DBConn = mysql_connect(...);
    return $DBConn;
}
// now you can just call $dbconn = getDBConn(); whenever you need it

Don't open a new connection unless you have a need for one (for instance, accessing multiple databases simultaneously).

Also you don't have to explicitly call mysql_close. I usually just include a function to quickly retrieve an existing db link (or a new one if none exists yet).

function &getDBConn() {
    global $DBConn;
    if(!$DBConn) $DBConn = mysql_connect(...);
    return $DBConn;
}
// now you can just call $dbconn = getDBConn(); whenever you need it
很酷不放纵 2024-09-02 07:46:48

使用“127.0.0.1”而不是“localhost”。它将 mysql_connect 的性能从 ~1 sek 提高到了几毫秒。

关于 Windows 上的 php/mysql_connect 和 IPv6 的文章: http://www.bluetopazgames.com/uncategorized/php-mysql_connect-is-slow-1-second-for-localhost-windows-7/

Use "127.0.0.1" instead of "localhost". It improved my performance with mysql_connect from ~1 sek to a couple of milliseconds.

Article about php/mysql_connect and IPv6 on windows: http://www.bluetopazgames.com/uncategorized/php-mysql_connect-is-slow-1-second-for-localhost-windows-7/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文