После 7-10 дней работы сайта выползает:
USER warning: OUT OF memory (Needed 1047272 bytes) query: SELECT n.nid, n.title, l.comment_count FROM node n INNER JOIN term_node tn ON tn.vid = n.vid INNER JOIN term_data td ON td.tid = tn.tid INNER JOIN node_comment_statistics l ON n.nid = l.nid WHERE n.status = 1 AND td.vid = 1 ORDER BY n.nid DESC LIMIT 0, 8 IN /usr/home/www/site.ru/modules/forum/forum.module ON line 434.
при восстановлении базы из бэкапа ошибка пропадает... и через 7-10 дней повторяется
как бороться с этим?
Комментарии
увеличить памяти
Если нет доступа к php.ini
от в .htaccess вашего сайта добавьте строку
php_value memory_limit 128M
128М соответственно меняем по желанию и возможности
спасибо за советы...
php_value memory_limit 256M - не помог...
решил отключить вывод системных ошибок на экран... пока сайт не ляжет
Управление настройками через .htaccess может быть ограничено. Смотрите справку у хостера.
Если ничего не найдете на тему php_memory, то обратитесь в тех поддержку.
Бывает включают больше памяти по запросу.
Еще можно попробовать добавить в settings.php строчку:
ini_set('memory_limit','128M');
Тут нужно прояснить несколько моментов.
Первый - у вас шаред хостинг или свой собственный ВДС, ВПС, Выделенный сервер? Если да - то необходимо настраивать конфиг файл mysql в /etc/my.cnf , потому как это ошибка по большому счету настройки mysql.
Второе - если шаред хостинг, то по возможности поотключать все лишние модули. К сожалению другие методы вряд ли тут помогут.
0_о
На шаред хостинге доступа к php.ini не было. И ini_set тоже вроде не действовал. А тут поставил 512M - сработало! Хостеры не будут меня бить?
здесь проблема в SQL.. так что на шареде практически не решается