PHP超时错误500


PHP timeout error 500

我有一个SQL指令'TRUNCATE和INSERT'的数组,该程序集是从txt文件检索的。

过程truncate和insert在6个表上进行,问题是其中一个表将接收110,000条记录。

我做了一些测试:

http://pastebin.com/egbnbfVa

1日

短语…错误:MySQL server has gone away

错误编号2006…

second http://pastebin.com/tfF7ZaVd

This…500错误

我认为你的脚本太长了,无法执行。如果无法优化脚本,请检查PHP日志并更改execution_time

思考如下代码:

<?php
   $configuration = array(
        'mysql-user'    => 'username',
        'mysql-password'    => 'password',
        'mysql-host'    => '127.0.0.1',
        'mysql-database'    => 'database',
   );
   $mysqli = mysqli_connect($configuration["mysql-host"], $configuration["mysql-user"], $configuration["mysql-password"], $configuration["mysql-database"]) or die("Error " . mysqli_error($link));
   $mysqli->set_charset("utf8");

在你的第二个代码中你有一个错误

错误:

for($i=0;i<count($sql_prod_s_saida_inARR);$i++)

正确的:

for( $i = 0; $i < count($sql_prod_s_saida_inARR); $i++ )

有一个建议,如果你有110k的记录,把它分成部分,例如每次10k。

您可以在脚本中设置时间限制。你可以这样设置它为unlimited:

set_time_limit ( 0 )

主要原因是每次插入后表都会重新索引。如果我是对的,你可以用交易来停止这个,这将使你的速度提高100倍以上:D