PhpMyadmin 中的最大执行时间

当我尝试在 phpMyadmin 中执行(一些)查询时,会得到这个错误

中超过60秒的最大执行时间 C: 第140行的 xampp phpmyadmin 库 dbi mysql.dbi.lib.php

因为我有一个非常大的表(超过9百万记录)

我已经编辑了文件 C: xampp php php.ini

并将“最大执行时间”的值从60改为1000,然后重新启动 PHP,仍然有相同的错误。

有办法吗?

393480 次浏览

你的改变应该起作用了。但是,使用“ xampp”堆栈的 php.ini 配置文件可能很少。尝试识别是否存在特定于“ apache”的 php.ini。一个可能的地点是:

C: xampp apache bin php.ini

更改 Web 应用程序的 php.ini需要重新启动 Apache。

您应该通过运行执行函数 phpinfo()的 PHP 脚本来验证更改是否已经发生。该函数的输出将告诉您许多 PHP 参数,包括超时值。

您还可能更改了与 Apache 使用的文件不同的 php.ini副本。

或者创建名为 php.ini的文件名,然后输入第一行 max_execution_time=0,然后保存它,并将该文件放到应用程序的根文件夹中。

就这样,祝你好运。

可能您正在使用 XMAPP 作为服务,为了正确地重新启动 XMAPP,您必须打开 XMAPP 控制面板,取消针对 Apache 和 MySQL 检查“ Svc”模块。然后单击 exit,现在重新启动 XMAPP,就完成了。

我在执行 curl 时遇到了同样的问题。 当我在 php.ini文件中修改以下内容时,我做对了:

max_execution_time = 1000 ;

还有

max_input_time = 1000 ;

也许您的问题应该通过进行以上两项更改并重新启动 Apache 服务器来解决。

即使修改了上面的内容,问题仍然存在,如果你认为这是因为使用 mysql 的数据库操作,你也可以试着修改一下:

mysql.connect_timeout = 1000 ; // this is not neccessary

所有这些都应该在 php.ini 文件中进行更改,并且 Apache 服务器应该进行更改 重新开始看到变化。

我有同样的错误,请去

Xampp phpMyAdmin 库 config.default.php

寻找: $cfg['ExecTimeLimit'] = 600;

您可以将“600”更改为任何更高的值,如“6000”。

以秒为单位的最大执行时间为(0表示无限制)。

这将修复您的错误。

用于 Windows 上的 Xampp 版本

这一行添加到 < strong > xampp phpmyadmin config.inc.php

$cfg['ExecTimeLimit'] = 6000;

Xampp php php.ini改为

post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M

改变 Xampp mysql bin my.ini

max_allowed_packet = 200M

转到 xampp/php/php.ini

找到这条线:

max_execution_time=30

并将其值更改为您想要的任何数字。重新启动 Apache。

“零”代表无限时间。

C: Apache24 htdocs phpmyadmin 库 Config.class.php

/**
* maximum execution time in seconds (0 for no limit)
*
* @global integer $cfg['ExecTimeLimit']
*/
$cfg['ExecTimeLimit'] = 0;

您还可以直接从 MySQL 导入大文件作为查询或 PHP 查询。

使用这种方法,在本地服务器上导入500,000行只需要18秒。

(先创建表)-然后:

LOAD DATA LOCAL INFILE 'Path_To_Your_File.csv'
INTO TABLE Your_Table_Name
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'

对于 Wamp 用户来说,

转到: wamp\apps\phpmyadmin3.3.9\libraries

在536号线 locate $cfg['ExecTimeLimit'] = 0;

并将数值从0改为6000

$cfg['ExecTimeLimit'] = 0;

$cfg['ExecTimeLimit'] = 6000;

重新启动 Wamp 服务器。

就像魔法一样!

在 php.ini 中,也必须检查 mysql.connect _ timeout。 它负责关闭套接字并返回“致命”。 例如,把它改成:

mysql.connect_timeout = 3600

这个时间总是以秒为单位,所以在我的例子中你有1个小时。

我在 WAMP 上的工作就是修改文件: Wamp64别名 phpmyadmin.conf,行:

 php_admin_value max_execution_time 600
php_admin_value max_input_time 600

我不需要更改库文件。