gpt4 book ai didi

php - EasyPHP win7 服务器上的 Kohana Web 应用程序中的 SQL 查询速度极慢

转载 作者:行者123 更新时间:2023-11-29 00:25:42 24 4
gpt4 key购买 nike

我有一个带有 Apache、PHP 和 MySQL 的 EasyPHP 本地 Web 服务器。到目前为止,我一直在使用只有 500 条记录的数据库。有时在查询数据库时会有很大的延迟,可能大约 10 秒,然后数据才会返回,但它并不一致。也许每 10 次用户搜索就会发生一次。今天我加载了一堆测试数据到6个表中。每个表现在有大约 15,000 条记录。现在,在搜索用户时,每次返回数据大约需要 25 秒。

这是 SELECT 查询:

SELECT SQL_CALC_FOUND_ROWS criteria.id, criteria.uid
FROM user_profile
INNER JOIN criteria ON (criteria.id = user_profile.cid)
WHERE ((criteria.city = 250)
AND (user_profile.dob BETWEEN STR_TO_DATE('1978-09-27', '%Y-%m-%d')
AND STR_TO_DATE('1993-09-27', '%Y-%m-%d'))
AND (criteria.gender = 2)
AND (EXISTS(SELECT id FROM criteria_interests
WHERE cid = user_profile.cid AND value = 1)
OR EXISTS(SELECT id FROM criteria_interests
WHERE cid = user_profile.cid AND value = 2)))
AND (user_profile.uid != 2)
LIMIT 0, 18

该查询大约需要 25 秒才能返回 202 个结果。如果我在 phpMyAdmin 中运行该查询,它会立即加载。

我不确定障碍在哪里。我知道 SQL_CALC_FOUND_ROWS 有时会导致速度变慢,但不会在 25 秒内返回 202 行。这里有问题。

我想知道如何找出问题所在。我最先说的间歇性延迟,基本上是我安装EasyPHP后出现的,所以我以为是EasyPHP的问题。但是现在看到随着更多数据库记录问题变得更糟,我认为这是一个 MySQL 问题。但是,当我在 phpMyAdmin 中运行查询时,速度非常快。所以现在我认为这是一个 PHP 问题。

我的 PHP 内存限制设置为 128M,这可能不是很多,但不会导致 25 秒的延迟。

有人知道我该如何解决这个问题吗?在配置 Apache、PHP 或 MySQL 方面,我不是最了解的,所以我不确定如何去做。

感谢您的任何建议。

最佳答案

我在从数据库加载时遇到了类似的问题。它在我的 EasyPHP 本地环境中运行极其缓慢。但是,当我将它上传到远程托管服务器时,问题就已经消失了。因此,如果您的 EasyPHP 运行您的应用程序很慢,请不要太担心,它会在真实服务器上运行正常。

如果您在本地开发时确实无法处理这种延迟,请改用 XAMPP 环境。下载链接: http://www.apachefriends.org/en/xampp.html

关于php - EasyPHP win7 服务器上的 Kohana Web 应用程序中的 SQL 查询速度极慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19037780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com