0

我正在向 Drupal 站点添加模块,并且遇到可怕的致命内存错误。我去清除accesslogcachewatchdog表,但仍然收到此类错误。我只在这个站点上运行一个数据库,它是供 Drupal 使用的,但我想知道我可以释放哪些其他表。我确信 phpMyAdmin 中列出的无数表对 Drupal 来说比其他表更重要。我可以用“开销”一味地清除所有表格吗?或者这会是一个主要的失礼吗?

任何洞察力都是最出色的。

4

2 回答 2

2

要添加到 Berdir 的答案,ac) 将是分析内存使用情况并找出正在消耗内存的内容,以及是否有办法优化或缓存它的输出。

安装 devel 并打开性能日志,它会告诉你哪些查询和模块占用了最多的内存。您还可以使用 xdebug 和 cachegrind 实用程序来深入诊断此问题,但设置需要一段时间。

如果你截断数据库表,当更多的东西填满这些表时,问题就会再次出现。

不过,最好的办法就是增加您的 PHP 内存限制。

于 2011-04-26T14:15:16.920 回答
2

不,你不能简单地清除一些表。无论如何,它对内存不足的错误也没有任何帮助。

实际上只有两种方法可以解决内存错误。a) 增加内存限制,64MB 应该是最小的,模块很多,甚至可能需要更多。b) 禁用某些模块。

于 2011-04-26T10:13:26.620 回答