Какие таблицы Drupal MySQL безопасно очищать (и когда)? - PullRequest
0 голосов
/ 26 апреля 2011

Я добавляю модули на сайт Drupal и получаю страшные фатальные ошибки памяти. Я пошел очищать таблицы accesslog, cache и watchdog, но все еще получаю такие ошибки. Я использую только одну базу данных на этом сайте, и она предназначена для использования в Drupal, но мне интересно, какие еще таблицы я могу освободить. Я уверен, что некоторые из множества таблиц, перечисленных в phpMyAdmin, более критичны для Drupal, чем другие. Могу ли я слепо очистить все столы с помощью «Накладных» или это будет серьезная ошибка?

Любое понимание было бы самым превосходным.

Ответы [ 2 ]

2 голосов
/ 26 апреля 2011

Чтобы добавить к ответу Бердира, в) можно было бы профилировать использование памяти и выяснить, что потребляет память, и если есть способ оптимизировать или кэшировать ее вывод.

Установите devel и включите ведение журнала производительности, он скажет вам, какие запросы и модули занимают больше всего памяти. Вы также можете использовать xdebug и утилиту cachegrind для углубленной диагностики, но для ее установки потребуется некоторое время.

Если вы урежете таблицы базы данных, проблема просто вернется, когда больше заполнит эти таблицы.

Лучше всего просто увеличить предел памяти PHP.

2 голосов
/ 26 апреля 2011

Нет, вы не можете просто очистить некоторые таблицы.В любом случае это также не помогает при ошибках из-за недостатка памяти.

На самом деле есть только два способа борьбы с ошибками из-за недостатка памяти.а) Увеличьте лимит памяти, минимум 64 МБ должно быть, со многими модулями может потребоваться даже больше.и б) отключить некоторые модули.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...