Главная/Ошибки/Нехватка памяти

Битрикс не хватает памяти: ошибки PHP и MySQL и как их убрать

Битрикс не хватает памяти в двух случаях: скрипт PHP упёрся в memory_limit и обрывается сообщением Allowed memory size exhausted, либо MySQL закрыл соединение и пишет MySQL server has gone away. Первую ошибку лечат повышением memory_limit до 256M и выше, вторую настройкой wait_timeout и max_allowed_packet. Если лимиты тарифа уже выбраны, проекту нужен тариф выше или VPS.

5 мин чтенияДанные проверены 24 октября 2026

Ответ за 30 секунд

Это две разные ошибки с разными причинами: memory_limit ограничивает PHP, а wait_timeout и max_allowed_packet ограничивают MySQL. Сначала поднимают лимит в панели или php.ini, затем проверяют, не упёрся ли сайт в потолок тарифа. Когда потолок достигнут, помогает тариф выше или VPS, а не бесконечная правка конфигов.

Свой процессор и память, root-доступ, почасовая оплата и окружение BitrixVM для тяжёлых проектов (Таймвеб, на 21 октября 2026).

Где именно Битриксу не хватает ресурсов: подсказка по симптому и месту запуска

01 · 1 мин

Чем нехватка памяти PHP в Битрикс отличается от обрыва связи с MySQL#

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

Что видно в журналеГде возникаетПричинаЧем лечится
Allowed memory size of N bytes exhaustedPHPСкрипту не хватило memory_limitПоднять лимит, облегчить операцию
MySQL server has gone away, код 2006MySQLИстёк wait_timeout, запрос больше max_allowed_packet или сервер перезапустилсяНастроить MySQL, дробить операцию
Lost connection to MySQL server during query, код 2013MySQLСервер или хостинг закрыл долгий запросСократить запрос, поднять таймауты
Out of memory: Killed process в журнале ядраLinux на VPSЗакончилась оперативная память сервераБольше RAM, меньше процессов php-fpm

Если вместо любого из этих текстов вы видите пустую страницу, сначала включите вывод ошибок по инструкции белый экран в Битрикс.

Инструмент · 1 мин

Где именно Битриксу не хватает ресурсов: подсказка по симптому и месту запуска#

Ответьте на два вопроса: что написано в журнале и где работает сайт. Подсказка покажет, чью настройку менять, свою или провайдера.

Где Битриксу не хватает ресурсов

Укажите, что вы видите и где работает сайт. Подсказка назовёт правку

Что вы видите
Где работает сайт

03 · 1 мин

Как поднять memory_limit для Битрикс на хостинге и на VPS#

  1. Узнайте текущий лимит. В админке откройте раздел «Проверка системы», описанный на странице проверка системы 1С-Битрикс. В консоли значение показывает команда:
    php -i | grep memory_limit
    Консольная версия PHP может иметь другой лимит, чем веб-версия.
  2. На хостинге задайте memory_limit в настройках PHP сайта в панели. На тарифах для Битрикс память на процесс равна 2048 МБ, на обычном виртуальном хостинге 1024 МБ (Таймвеб, на 21 октября 2026).
  3. Через .htaccess, если PHP работает модулем Apache:
    php_value memory_limit 512M
    Если сервер ответил ошибкой 500, строку уберите: PHP запущен другим способом. Причины разобраны на странице Битрикс не запускается.
  4. На VPS правят php.ini той версии, которая обслуживает сайт, либо файл пула php-fpm:
    memory_limit = 512M
    php_admin_value[memory_limit] = 512M
    Первая строка для php.ini, вторая для пула. После правки перезагрузите php-fpm.
  5. Повторите операцию. Если сообщение называет прежнее число байтов, правка не применилась: проверьте, тот ли файл вы изменили. Если число стало больше, операция тяжелее нового лимита.

Лимит умножается на число процессов

Двадцать процессов php-fpm по 512M при полной нагрузке потребуют около 10 ГБ. Если оперативной памяти на сервере 4 ГБ, система начнёт убивать процессы, и вместо одной ошибки вы получите другую.

04 · 1 мин

Что делать, если Битрикс пишет MySQL server has gone away#

Сообщение означает, что соединение с базой закрыто к моменту, когда скрипт вернулся с ответом. Причин четыре: скрипт долго занимался своими делами, и сервер закрыл простаивающее соединение по wait_timeout; запрос оказался больше max_allowed_packet, как у большого дампа или пакета товаров; MySQL перезапустился; хостинг завершил слишком долгий запрос.

На VPS эти параметры правят в конфигурации MySQL. Ниже стартовые значения для проверки, а не норма для любого проекта:

[mysqld]
max_allowed_packet = 64M
wait_timeout = 600

Размер буфера InnoDB (innodb_buffer_pool_size) подбирают под память сервера, оставляя запас для PHP. На виртуальном хостинге эти параметры задаёт провайдер, а у тарифов есть лимит нагрузки на MySQL: 20000 у 1Сайт, 55000 у Eterno и 90000 у Premium (Таймвеб, на 21 октября 2026). Тарифы сравниваются на странице хостинг для Битрикс. Если ошибка возникает при развёртывании копии, смотрите порядок в материале восстановление Битрикс из копии.

05 · 1 мин

Когда лимитов хостинга мало и проект Битрикс переводят на VPS#

Переход оправдан, если выполняются два условия из трёх: лимит памяти уже выставлен на максимум тарифа, а ошибка повторяется на обычных операциях; пики посещаемости обрывают процессы; нужен доступ к my.cnf и php-fpm, которого на хостинге нет.

Порядок обычно такой: сначала тариф выше внутри линейки Битрикс-хостинга (1Сайт, Eterno, Premium), затем VPS с готовым окружением BitrixVM. Установка описана на странице установка Битрикс на VPS. Облегчить нагрузку посетителей помогает композитный сайт, но он не спасает тяжёлые операции админки.

06 · 1 мин

Вопросы о нехватке памяти в Битрикс#

Хватит ли 256M памяти PHP, чтобы Битрикс не падал с Allowed memory size?

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

Почему MySQL server has gone away появляется только при импорте или восстановлении Битрикс?

Во время импорта к базе уходят большие запросы и долгие паузы между ними. Первое упирается в max_allowed_packet, второе в wait_timeout. Дробите операцию на порции или поднимите эти параметры на VPS.

Поможет ли кэш, если Битрикс падает по памяти?

Кэш снижает нагрузку от посетителей, но не облегчает операции, которые запускаете вы: импорт, пересчёт, ресайз. Для них нужен запас по memory_limit или порционный запуск.

Как отличить нехватку памяти от лимитов хостинга, когда процессы Битрикса обрываются?

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

Почему этому можно верить

Как мы проверяли

Цены лицензий и хостингаЦены 1С-Битрикс и тарифы сняты вручную, у каждой цифры указана дата проверки.
Всё можно повторитьКоманды и шаги установки описаны так, что их повторит любой читатель.
Независимый справочникНе связан с 1С-Битрикс и хостингами и пишет о подводных камнях тоже.

Источники цифр на этой странице: Цены 1С-Битрикс: Управление сайтом, 1c-bitrix.ru/buy/products/cms.php, проверено 21 октября 2026; Хостинг для 1С-Битрикс Таймвеб, timeweb.com/ru/services/cms/bitrix, проверено 21 октября 2026; Хостинг для 1С-Битрикс Таймвеб: лимиты памяти и нагрузки MySQL по тарифам, timeweb.com/ru/services/cms/bitrix, проверено 21 октября 2026.

BBРедакция BitrixBase · обновлено 24 октября 2026

Нужен полный контроль? Возьмите VPS

Для тяжёлого Битрикса, своего окружения BitrixVM и коробочного Битрикс24 подойдёт виртуальный сервер с root-доступом и почасовой оплатой.

  • Больше памяти и процессора
  • Root-доступ и окружение BitrixVM
  • Для коробочного Битрикс24
  • Почасовая оплата
Где не хватает