Php 如何增加从mysql数据库获取多条记录的执行时间
虽然我使用php代码从mysql表中获取了近10000条记录的所有记录,但执行速度很慢Php 如何增加从mysql数据库获取多条记录的执行时间,php,mysql,Php,Mysql,虽然我使用php代码从mysql表中获取了近10000条记录的所有记录,但执行速度很慢 有谁能告诉我如何以最短的执行时间获取记录吗?我们需要查看数据库结构和您的查询才能给出更好的答案 但是,下面将为您的脚本提供更多的时间来运行查询 你可以用两种方法来做 在php文件的开头添加代码set\u time\u limit(以秒为单位的数字) 您可以将php.ini文件max\u execution\u time=3000编辑为更高的值 选项1将仅增加该脚本的执行时间。 选项2将增加所有脚本的执行时间。
有谁能告诉我如何以最短的执行时间获取记录吗?我们需要查看数据库结构和您的查询才能给出更好的答案 但是,下面将为您的脚本提供更多的时间来运行查询 你可以用两种方法来做
set\u time\u limit(以秒为单位的数字)代码>
max\u execution\u time=3000
编辑为更高的值选项2将增加所有脚本的执行时间。我们需要查看数据库结构和您的查询,以给出更好的答案 但是,下面将为您的脚本提供更多的时间来运行查询 你可以用两种方法来做
set\u time\u limit(以秒为单位的数字)代码>
max\u execution\u time=3000
编辑为更高的值<?php ini_set('memory_limit','512M'); ?>
有关执行时间,请参阅:
尝试添加索引。
但是如果你想要所有的记录,这一批,这需要时间是正常的
尝试增加允许的内存
<?php ini_set('memory_limit','512M'); ?>
有关执行时间,请参阅:
1用于特殊脚本
set_time_limit(number in seconds);
整个php中的php.ini中的2(适用于所有脚本)
3如果无法访问php.ini(如在共享服务器上),请将其写入.htaccess文件
<IfModule mod_php5.c>
php_值最大执行时间259200
1用于特殊脚本
set_time_limit(number in seconds);
整个php中的php.ini中的2(适用于所有脚本)
3如果无法访问php.ini(如在共享服务器上),请将其写入.htaccess文件
<IfModule mod_php5.c>
php_值最大执行时间259200
您应该做的第一件事是分析您查询的
并查看速度如此低的原因
1) 如果您的选择不使用索引-您肯定应该创建索引(如果它不存在)或强制您的查询手动使用该索引(强制索引(主)
等)
2) 如果查询创建的临时表(在解释输出中使用temporary
),则需要为MySQL服务器增加分配的内存,以便它可以在内存中创建临时表,而不将其写入HDD(这需要大量时间)。对于此优化,请检查mysql配置中的tmp_table_size
和max_heap_table_size
3) 只有在您没有上述问题的情况下,并且您的脚本中有一些处理数据的复杂逻辑,您才能直接从php代码中设置时间限制(0)
(意思是无限),或者编辑php.ini并将max\u executeion\u time
设置为更高的值。或者,您也可以安装操作缓存或其他操作码缓存系统,这些系统可以稍微提高代码的速度(通常为2-10倍)
(问题可能不仅在于服务器,还在于连接速度和应下载的数据量——可能select速度快,但数据加载时间长,因此请使用Firebug检查响应大小,并与您的带宽进行比较)您应该做的第一件事是分析您查询的并查看速度如此低的原因
1) 如果您的选择不使用索引-您肯定应该创建索引(如果它不存在)或强制您的查询手动使用该索引(强制索引(主)
等)
2) 如果查询创建的临时表(在解释输出中使用temporary
),则需要为MySQL服务器增加分配的内存,以便它可以在内存中创建临时表,而不将其写入HDD(这需要大量时间)。对于此优化,请检查mysql配置中的tmp_table_size
和max_heap_table_size
3) 只有在您没有上述问题的情况下,并且您的脚本中有一些处理数据的复杂逻辑,您才能直接从php代码中设置时间限制(0)
(意思是无限),或者编辑php.ini并将max\u executeion\u time
设置为更高的值。或者,您也可以安装操作缓存或其他操作码缓存系统,这些系统可以稍微提高代码的速度(通常为2-10倍)
(问题可能不仅在于服务器,还在于连接速度和应下载的数据量——可能select速度快,但数据加载时间长,因此请使用Firebug检查响应大小,并与您的带宽进行比较)我们对您的数据库结构或查询一无所知?我们对您的数据库结构或查询一无所知?如果速度较慢,请先尝试优化数据库查询或数据库。允许等待更长的时间并不是您真正应该选择的……如果等待速度慢,请先尝试优化数据库查询,或者优化数据库。允许等待更长的时间并不是你真正应该选择的…内存限制在这里不受影响,它是执行时间。内存限制在这里不受影响,它是执行时间。