1с не хватает памяти при обновлении

Ошибка «Недостаточно памяти» в 1С 8.3 и 8.2 является не такой уж и редкой. Ее можно встретить и в конфигураторе (например, при сравнении конфигураций), а так же в режиме «1С:Предприятие» при выполнении трудоемких обработок: например при записи большого файла формата base64.

Данная ошибка может встречаться не только в программе 1С, но и в других программах операционной системы Windows.

Все дело в том, что в 32-х разрядных операционных системах по умолчанию 2 ГигаБайта на различные программы и столько же для операционной системы. В 64-х разрядных ОС выделяемый на приложения объем памяти составляет уже 4 ГигаБайта.

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

Конечно же, первый способ лучше и предпочтительнее, но если в данный момент, либо вообще вы не можете им воспользоваться, то можете воспользоваться вторым.
Дня начала перейдите в командную строку операционной системы. Для этого перейдите в меню «Пуск» и вверите в строке поиска «cmd».

Перед вами отобразится поиск программ. Выберите ту, что называется «cmd».

Так же командную строку можно открыть при помощи комбинации горячих клавиш Windows + R.

В открывшемся окне наберите следующую команду и так же нажмите «Enter»:

bcdedit /set increaseuserva 3200

В данном случае вы увеличите объем адресной памяти до 3200 МегаБайт.

После того, как у вас все получилось, настоятельно рекомендуется восстановить прежний объем адресной памяти. Данная мера временная, так как при выделении памяти на приложения, у операционной системы ее становится меньше. За счет этого возможно нарушение стабильности Windows.

Для восстановления адресной памяти в значение по умолчанию можно воспользоваться следующей командной, которая так же вводится в командной строке:

bcdedit /deletevalue increaseuserva

Обратите внимание, что при часто встречающийся ошибке «Нехватка памяти» в 1С так же может помочь удаление помеченных объектов. Возможно, в программе их накопилось очень много и программе сложно обрабатывать такие объемы данных. Если и этот способ не помог, то вам следует увеличить разрядность операционной системы Windows.

Возникают ошибки. Мы рассмотрим одну из них, посвящённую теме «Недостаточно свободной памяти на сервере 1С:Предприятия».

Методика устранения ошибки «Недостаточно свободной памяти на сервере 1С:Предприятия».

Объём памяти рабочих процессов при работе на агент-сервере 1С не является бесконечным. При его максимальной загрузке пользователь видит перед собой радующее своей новизной сообщение - «Недостаточно свободной памяти на сервере 1С:Предприятия».


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

Недостаточная мощность железа

Если в системе работает до пяти человек - тогда будет достаточно одного восьмигигабайтного компа с двумя винтами (на одном - SERVER, на втором - SQL) и дополнительно установленных фишек. Но другое дело - человек тридцать пользователей, тысячи документов первички. Тут и SQL нужно выносить в отдельный сервер, и одним сервером терминалов уже не справиться.

Нехватка памяти для лишней информации

Типовые конфигурации пытаются описывать буквально все процессы, которые только мог себе представить разработчик, пытаясь создать универсальное бухгалтерское средство под названием 1С:Предприятие. Поэтому конкретный пользователь получает дополнительный багаж в виде бездны объектов метаданных , дополнительных таблиц SQL, неиспользуемых реквизитов. Постоянная прописка и переиндексация всего этого ненужного в регистрах программы занимает длительное время и много места.

Ошибки кодирования

Перегрузка сервера возникает и при непонимании (иногда) программистами некоторых процессов и внедрении ими своих «костылей», увеличивающих срок выполнения поставленных задач (и количество рабочих процессов тоже).

Ошибки программы

Кроме всего прочего, и это является часто чуть ли не основной причиной - программа 1С имеет неимоверное количество внутренних ошибок . Некоторые из них исправляются в последующих релизах. Этим ошибкам посвящено большое количество форумов, на которых админы, обсуждая очередные каверзы, шутя говорят, что в один эс работают, наверное, одни таджики (Джамшут и Равшан).

Так что же делать с сервером 1С

Поскольку причины возникновения проблемы могут быть различными, то и способы выхода из ситуации тоже есть разные:

Перезапуск службы сервера

Самым быстрым и простым способом решения является перезапуск службы сервера. Из командной строки Microsoft Windows (cmd): для остановки выполняется команда - net stop «1C:Enterprise 8.3 (или ваша версия) Server Agent», а для запуска - net start «1C:Enterprise 8.3 (соответственно вашей версии) Server Agent». Такое решение не снимает вопрос полностью - чаще всего ошибка повторяется. Частота её повторов зависит от количества клиентов и количества рабочих процессов.

ВАЖНО. Для возможности перезапуска нужно обладать соответствующими правами.

Автоперезапуск и настройки кластера

Иногда даже один выполняемый рабочий процесс может занять чуть ли не всю оперативку. Такую задачу решают путём увеличения их количества в настройках кластера. Добавляют примерно по одному процессу для каждых пятнадцати-тридцати юзеров.

Интервал перезапуска. Незадолго до завершения предыдущего запускается новый процесс rphost.exe. - На него переходят соединения от старого. Допустимый объём памяти - при превышении этой величины будет запущен секундный таймер отсчёта.

Интервал по превышению предельного объёма - при превышении таймером отсчёта этого значения будет запущен новый процесс. И на него подвяжутся соединения от старого. А старый, в свою очередь, помечается неактивным. Выкл. процессы останавливать через - по прошествии значения этого параметра после пометки рабочего процесса неактивным, произойдёт его завершение операционной системой. Если такой параметр указать равным «0» - тогда все неактивные процессы не будут автоматически завершаться.

ВАЖНО. Эта настройка характерна тем, что отключает от базы только того из клиентов, который запустил некорректный отчёт. А остальные - будут плавно перемещены к новым соединениям (без прерывания от своей базы).

Количество рабочих процессов

При перегрузке rphost.exe с фоновыми заданиями и отсутствии создания новых процессов нужно проверить настройки:

Макс. объем памяти рабочих процессов - это суммарный объем памяти для всех процессов вместе. Измеряется в байтах. При установке неправильного значения (неадекватного нормальной работе) все получат ошибку «Недостаточно свободной памяти на сервере 1с».

Безопасный расход памяти на 1 вызов - контролирует расходование памяти при вызове сервером (в байтах). При использовании вызовом большего количества чем указано - он будет завершён внутри кластера. Перезапуск его произведён не будет. А утрата сеанса не отразится на других клиентах.

Объем памяти для процессов, до величины которого сервер считается системой производительным - при достижении этого значения сервер кластера перестаёт принимать соединения. Количество информационных баз на процесс - изолирует ИБ по процессам. После изоляции информационных баз (при введении значения - «1») проблемы обычно решаются.

Количество соединений на один процесс - по умолчанию установлено значение «128». Если текущая база отличается очень большой нагрузкой от фоновых заданий, то можно уменьшить это количество, например, до «25». При таких настройках немного изменится и настройка кластера:

Уровень отказоустойчивости - показывает то количество серверов, при выходе из строя которого не произойдёт аварийного завершения работы клиентов. При этом автоматически будут запущены в нужном количестве резервные сервисы.

Режим распределения нагрузки - имеет два возможных варианта. Если установить «Приоритет по производительности» - то память сервера будет расходоваться больше для увеличения производительности. При выборе «Приоритет по памяти» - кластером 1С память будет экономиться.

Инструмент для работы с базой

Для оперирования с базой данных необходимо пользоваться средствами СУБД MS SQL.

Проверка конфигурации

Возможно, причина ошибка кроется в некорректной информации, содержащейся в Конфигурации. Для её проверки требуется выполнить команду «Проверка конфигурации». (Не путать с тестированием!). Перед выполнением нужно проверить установку чекбокса (флажка) - «логическая целостность». При обнаружении некорректности это будет отражено в сообщении. А ошибки будут удалены.

Мы рассмотрели причины отсутствия свободной памяти на сервере 1С и возможные пути устранения этого. Один из способов наверняка позволит разрешить проблему.

Рассмотрим более подробно варианты исправления ошибки “Недостаточно памяти” в 1С 8.3.

Способ 1. Увеличить размер адресной памяти

Существует ограничение в выделении адресной памяти для программного обеспечения операционной системой: для 32-х разрядной системы - 2 Гб; для 64-х разрядной системы - 4 Гб.

Шаг 1

Для увеличения размера адресной памяти нужно сделать следующее: запускаем командную строку с правами Администратора:

  • Пуск – Выполнить – в командной строке вводим CMD и жмем Enter:
  • Или кликните правой кнопкой мыши по кнопке Пуск и выберите командная строка (Администратор).

Шаг 2

Далее попадаем в диалоговое командное окно, где и должны набрать команду на увеличение адрес ной памяти. Введем в командной строке BCDEdit /set increaseuserva xxxx, где вместо хххх указываем объем виртуального адресного пространства в мегабайтах. Например, в 32-х разрядных системах рекомендуется 3072 Мб:

Шаг 3

Перезагружаем компьютер. Произведем действия в программе 1С 8.3, которые не получались ранее.

Шаг 4

После выполнения операций лучше вернуть адресной памяти значение по умолчанию. Для этого введем в командной строке BCDEdit /deletevalue increaseuserva:

Перезагружаем компьютер.

Способ 2. Удалить помеченные на удаление документы и справочники

В платформе 1С 8.3 появилась возможность с помощью регламентного задания .

Удаление помеченных объектов позволяет:

  1. Увеличить производительность системы;
  2. Уменьшить размер базы данных.

Шаг 1. Создаем копию базы

Открываем пункт : раздел Администрирование – Настройки программы – Поддержка и обслуживание – Резервное копирование и восстановление:

Настраиваем расписание автоматического копирования базы и нажимаем Готово:

Подробнее как сделать резервную копию 1С 8.3 смотрите в нашем видео уроке:

Шаг 2. Удаляем помеченные объекты

Открываем пункт Автоматически удалять помеченные объекты по расписанию: раздел Администрирование – Настройки программы – Поддержка и обслуживание – Регламентные операции:

Настраиваем расписание автоматического удаление помеченных объектов в 1С 8.3 на удобное время. Например, на время обеденного перерыва и нажимаем Готово:

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


Поставьте вашу оценку этой статье:

Такая же ситуация может происходить во время формировании объемного отчета, выполнения , при выполнении , загрузке большой информационной базы и т.п. Заметим, это происходит при выполнении каких-то объемных операций, которые требуют определенного количества ресурса компьютера. Причем в обычном режиме программа 1С работает относительно нормально.

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

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

Добавив оперативной памяти нашему компьютеру, ошибка появляется снова. В таком случае, причина кроется в ограниченном выделении адресной памяти операционной системой под программное обеспечение:

  • в 32-х разрядных операционных системах по умолчанию выделено 2 Гб на различные программы и столько же для операционной системы,
  • в 64-х разрядных операционных системах — объем памяти составляет уже 4 Гб.

При работе 1С и выполнения операции, можно через Диспетчер задач следить за процессом загрузки процессора и за свободным количеством памяти. В нашем случае, при обновлении это цифра приближалась к нулю и в этот момент возникала ошибка «Недостаточно памяти». Запустить Диспетчер задач можно нажатием клавиш Ctrl+Alt+Del и открыв вкладку Быстродействие , следить за данными показателями.

Таким образом, нам необходимо увеличить размер выделяемой адресной памяти для приложений (в том числе и 1С). Это можно сделать двумя способами: перейти с 32-х разрядной системы на 64-х разрядную или увеличить выделяемое по умолчанию количество адресной памяти. Первый вариант является более правильным, но в силу некоторых причин он бывает невозможен, поэтому рассмотрим второй вариант решения проблемы.