PhpMyAdmin能够处理大量数据吗?

时间:2014-04-05 00:53:16

标签: php mysql phpmyadmin

当我的意思是"大"它唯一的~25000 rows ...

我有一个重量级为5 Mb的大表,在尝试列出所有数据并查看信息时,PhpMyAdmin会显示以下错误:

  

致命错误:允许的内存大小为134217728字节耗尽(尝试过   分配29050028个字节)   /Library/WebServer/Documents/phpmyadmin/libraries/DisplayResults.class.php   在第2561行

它只有25K行,它会超过100K时会是什么?

我已经在线查看如何解决这个问题,并且我已将PHP.ini中的资源限制提高到:

  

;;;;;;;;;;;;;;;;;;; ;资源限制; ;;;;;;;;;;;;;;;;;;;

     

每个脚本的最长执行时间,以秒为单位;   http://php.net/max-execution-time;注意:该指令是硬编码的   CLI为SAPI max_execution_time = 1000

为0      

每个脚本可能花费在解析请求数据上的最长时间。   这很好;想要按时间限制生产服务器上的这个时间   意外消除;长期运行的脚本。 ;注意:这个   对于CLI SAPI,指令被硬编码为-1;默认值:-1   (无限制);发展价值:60(60秒);产值:   60(60秒); http://php.net/max-input-time max_input_time = 1000

     

最大输入变量嵌套级别;   http://php.net/max-input-nesting-level; max_input_nesting_level = 64

     

可以接受多少GET / POST / COOKIE输入变量   max_input_vars = 10000

     

脚本可能消耗的最大内存量(128MB);   http://php.net/memory-limit memory_limit = 128M

但没有改变。

请帮忙。

由于

1 个答案:

答案 0 :(得分:1)

你得到的这个错误

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 29050028 bytes) in /Library/WebServer/Documents/phpmyadmin/libraries/DisplayResults.class.php on line 2561

表示您的脚本超过了已设置的128M内存限制。因此,php.ini中任何有意义的增加都应该高于128M。 256M应该是你的下一步。请记住在执行此操作后重新启动apache或fastcgi服务。

当将表导出到sql,csv或电子表格时,PHPMyAdmin能够处理无限量的数据。在显示带有ajax更新和坚韧按钮的漂亮交互式网格时,它无法处理那么多数据。那是因为表的内容被注入到一个对象中,并且该对象必须将整个内容保存在内存中,直到它呈现为止。

如果10000行的数量超过128M,则PHP无法在变量中保存该信息。这不是PHPMyadmin的错。