PHP网页正在挂起调用AJAX脚本(查询数据库)。 我不得不停下来,因为它是在2小时前调用的。 我在另一台DigitalOcean服务器上测试了它,并在2分钟内响应。
服务器类似(16GB RAM,8CPU等)
并没有太多的流量。
我真的不明白。我注意到的唯一区别是服务器是:MySQL版本和Ubuntu版本。
第一台服务器:MySQL服务器版本:5.5.52-0ubuntu0.14.04.1(Ubuntu 14.04.2 LTS)。
第二个:MySQL服务器版本:5.7.13-0ubuntu0.16.04.2(Ubuntu 16.04 LTS)。
这些表在查询的相同表上获得了相同的索引。
不过,我不知道问题出在哪里?
可能来自SQL查询:
SELECT COUNT(*) as max_tok FROM dest WHERE b_id = 1 and statut < 3 and id IN (SELECT dest_id from ouv where created_at > '2016-07-13 00:00:00' and created_at < '2016-10-13 00:00:00')
MySQL服务器1:
+---------------+------------+----------------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------------+------------+----------------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| dest | 0 | PRIMARY | 1 | id | A | 5994930 | NULL | NULL | | BTREE | | |
| dest | 0 | dest_b_id_mail_index | 1 | b_id | A | 16 | NULL | NULL | | BTREE | | |
| dest | 0 | dest_b_id_mail_index | 2 | mail | A | 5994930 | NULL | NULL | | BTREE | | |
| dest | 1 | dest_statut_index | 1 | statut | A | 16 | NULL | NULL | | BTREE | | |
| dest | 1 | dest_base_id_hash_index | 1 | b_id | A | 16 | NULL | NULL | | BTREE | | |
| dest | 1 | dest_base_id_hash_index | 2 | hash | A | 5994930 | NULL | NULL | | BTREE | | |
+---------------+------------+----------------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
MySQL服务器2:
+---------------+------------+----------------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------------+------------+----------------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| dest | 0 | PRIMARY | 1 | id | A | 4320721 | NULL | NULL | | BTREE | | |
| dest | 0 | dest_b_id_mail_index | 1 | b_id | A | 1156 | NULL | NULL | | BTREE | | |
| dest| 0 | dest_b_id_mail_index | 2 | mail | A | 4320721 | NULL | NULL | | BTREE | | |
| dest | 1 | dest_statut_index | 1 | statut | A | 3 | NULL | NULL | | BTREE | | |
| dest | 1 | dest_b_id_hash_index | 1 | b_id | A | 942 | NULL | NULL | | BTREE | | |
| dest | 1 | dest_b_id_hash_index | 2 | hash | A | 4320721 | NULL | NULL | | BTREE | | |
+---------------+------------+----------------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
(P.S。:SQL查询适用于我们的第二台服务器)
答案 0 :(得分:0)
在这种特殊情况下,我已迁移到新的DO服务器(MySQL 5.7.15和PHP 7.0.12)。 我已经备份了我的数据库和文件,并将其导入新服务器。