相同的MySQL查询在phpMyAdmin中需要0.3秒,在PHP中需要7.9秒 - 为什么?

And*_*ift 1 php mysql performance phpmyadmin

我正在运行以下MySQL查询:

select * from combinations where family_type='f597';

在一张有大约90,000行的桌子上.如果我通过phpMyAdmin运行查询,运行需要0.3秒,但在同一主机上的PHP页面中,它一直需要大约8秒.

要测试我的页面所需的时间,我运行它:

$secs = microtime(true);
$q = "select * from combinations where family_type='f597';";
$r = mysql_query($q);
$secs = round(microtime(true)-$secs, 3);
exit("$secs seconds");

表结构如下:

CREATE TABLE `combinations` (
  `part_no` char(7) collate latin1_general_ci NOT NULL,
  `key_type` smallint(4) unsigned NOT NULL,
  `family_type` char(5) collate latin1_general_ci NOT NULL,
  `year_start` varchar(6) collate latin1_general_ci NOT NULL,
  `year_end` varchar(6) collate latin1_general_ci NOT NULL,
  `visual` varchar(31) collate latin1_general_ci NOT NULL ,
  `info_veh_0` varchar(255) collate latin1_general_ci NOT NULL,
  `info_veh_1` varchar(255) collate latin1_general_ci NOT NULL,
  `info_veh_2` varchar(255) collate latin1_general_ci NOT NULL,
  `key` mediumint(8) unsigned NOT NULL auto_increment,
  PRIMARY KEY  (`key`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=2349584 ;

谁能解释为什么我的程序运行相同的查询比phpMyAdmin慢得多?

[更新1]我在任何其他编程之外测试了查询 - 我创建了一个简单的test.php页面,其中只包含mysql连接信息和相关查询.因此,先验不是网站编程的其他方面导致延迟.

[更新2]加载页面所需的实际时间对于phpMyAdmin和我的测试页面是相同的.差异可能是由于phpMyAdmin计算查询时间的方式.

在任何情况下,如果查询只需0.3秒处理,其余的延迟来自哪里?

NDM*_*NDM 8

这可能是因为phpMyAdmin在屏幕后面添加了一个限制条款,因为它正在对结果进行分页.