Добрый день!
Очень удивился, когда через месяц работы сайта все место 100Мб на хостинге благополучно закончилось.
Сайт на самом деле небольшой, абсолютно не понятно от чего пухнет база.
Вопросы следующие
- почему растет база так сильно?
- какими способами с этим бороться?
Комментарии
А вы посмотрите в каких табличках у вас больше всего записей.
Сегментация таблиц. Регулярно производите
OPTIMIZE TABLE <tablename>
, особенно на таблицы кешей.Сначала сделайте резервную копию!
Также можно удалить содержимое таблиц, которые хранят логи (watchdog), кеш (cache_*).
Если было много действий со строками переводов и/или много модулей были установлены, а затем удалены - чистил таблицы locales_source и locales_target. Они должны быть около 950 Кб и 6500 записей (Друпал 5.7 и около 80 доп. модулей, всего установлено 129 модулей).
Еще можно вполне успешно бороться с этим фактом простой сменой хостера. Я искренне и изо-всех сил надеюсь, что когда-нибудь к нам придут зарубежные хостеры, хотя бы в виде выкупа каких-либо ру-хостеров, и все жадные и тупые российские хостеры, которые в 2008 году от Р.Х. все еще выдают своим пользователям ресурсы на уровне 1998 года, канут в лету, а после смерти попадут в ад, где их заставят запускать Друпал в связке с CCK и Views на машине с 640 килбайт памяти, как завещал в свое время великий Гейц.
p.s. И, да, раз уж речь о Р.Х. - Христос воскресе!
Всем спасибо за помощь!
Вообщем, заодно решил проадейтить с 6.1 на 6.2. Долго не решался. Прошло все удачно, хотя в логам встречались записи
Duplicate entry 'admin/content/taxonomy/%/add/term' for key 1 query: INSERT INTO menu_router (path, load_functions, to_arg_functions, access_callback, .
После этого размер сократился с 115Мб до 20Мб. Очень порадовало.
Потом залез в phpMyAdmin. Одна таблица вызывала вопросы CACHE_FORM = 18,4Мб.
Сделал для нее (по совету axel)
OPTIMIZE TABLE CACHE_FORM
И собственно теперь вся БД 7,6Мб, таблицы внутри 6,2Мб.
Перевелся на более экономичный тариф на хостинге.
Видимо эти процедуры навешаны на cron. Сейчас буду смотреть.