При обращении к базе данных произошла ошибка "Could not allocate space..."
Симптомы:
При выполнении какого-либо действия рабочее место оператора ЛЭРС УЧЁТ выдаёт следующую ошибку:
При обращении к базе данных произошла ошибка.
Could not allocate space for object ‘<object_name>’ in database 'LERS' because the ‘PRIMARY’ filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
Проверьте соединение сервера ЛЭРС УЧЁТ с SQL-сервером.
У этой ошибки могут быть две причины.
1. Закончилось место на диске компьютера с базой данных ЛЭРС УЧЁТ.
Проверьте, что на компьютере, на котором установлен SQL Server достаточно свободного места. Если место на диске исчерпано, удалите ненужные файлы, чтобы его освободить.
2. Исчерпан максимальный размер базы данных ЛЭРС УЧЁТ.
В этом случае место закончилось в базе данных ЛЭРС УЧЕТ. Максимальный размер базы данных зависит от используемой редакции SQL-сервера. В составе ЛЭРС УЧЕТ поставляется Microsoft SQL Express 2014, максимальный размер базы в котором ограничен 10 ГБ. Используемая редакция SQL-сервера и количество свободного места в базе данных отображается в отчете о состоянии системы (см. главное меню "Отчеты").
Примечание
По умолчанию файл с базой данных ЛЭРС находится по пути
С:\Program Files\Microsoft SQL Server\MSSQL10_50.LERS\MSSQL\DATA\LERS.mdf
Если вы используете сервер, поставляющийся вместе с ЛЭРС УЧЁТ, проверьте размер этого файла. Если он превышает 10ГБ, значит максимальный размер БД для бесплатной редакции сервера превышен.
Вам нужно очистить место в базе данных, удалив, например, старые журналы (главное меню Администрирование → Системные параметры). Уменьшите сроки хранения журналов в базе данных и сохраните изменения.
Так же можно удалить старые данные по точкам учёта, воспользовавшись операцией группового удаления. Перед удалением данных за какой-либо интервал их можно экспортировать и сохранить отдельно в виде XML-файла.
После этого выполните операцию сжатия базы данных (shrink). Для этого войдите на компьютер, на котором установлен SQL Server под административной учётной записью. В поле "Поиск" меню "Пуск" наберите cmd
и нажмите Enter.
Выполните следующую команду:
sqlcmd -E -S (local)\LERS -d LERS -Q "DBCC SHRINKDATABASE ('LERS', 1)"
Если после этого размер файла БД всё ещё больше 10ГБ, или если требуется сохранить все данные, нужно перейти на коммерческую редакцию SQL Server. Например, Standard Edition. У него нет практических ограничений на размер базы данных.