当我尝试在 phpMyadmin 中执行(一些)查询时,会得到这个错误
中超过60秒的最大执行时间 C: 第140行的 xampp phpmyadmin 库 dbi mysql.dbi.lib.php
因为我有一个非常大的表(超过9百万记录)
我已经编辑了文件 C: xampp php php.ini
并将“最大执行时间”的值从60改为1000,然后重新启动 PHP,仍然有相同的错误。
有办法吗?
你的改变应该起作用了。但是,使用“ xampp”堆栈的 php.ini 配置文件可能很少。尝试识别是否存在特定于“ apache”的 php.ini。一个可能的地点是:
C: xampp apache bin php.ini
更改 Web 应用程序的 php.ini需要重新启动 Apache。
php.ini
您应该通过运行执行函数 phpinfo()的 PHP 脚本来验证更改是否已经发生。该函数的输出将告诉您许多 PHP 参数,包括超时值。
phpinfo()
您还可能更改了与 Apache 使用的文件不同的 php.ini副本。
或者创建名为 php.ini的文件名,然后输入第一行 max_execution_time=0,然后保存它,并将该文件放到应用程序的根文件夹中。
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;
$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
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
wamp\apps\phpmyadmin3.3.9\libraries
在536号线 locate $cfg['ExecTimeLimit'] = 0;
locate $cfg['ExecTimeLimit'] = 0;
并将数值从0改为6000
$cfg['ExecTimeLimit'] = 0;
敬
重新启动 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
我不需要更改库文件。