При обращении к базе данных произошло ошибка. Проверьте соединение сервера ЛЭРС УЧЕТ с SQL сервером
Ошибка.docx (161 KB)
Ошибка.docx (161 KB)
У вас кончилось место на диске, на котором SQL сервер держит файлы базы данных.
Ошибка означает, что место закончилось в базе данных ЛЭРС УЧЕТ. Максимальный размер базы данных зависит от используемой редакции SQL-сервера. В составе ЛЭРС УЧЕТ поставляется Microsoft SQL Server 2008 R2, максимальный размер базы в котором ограничен 10 ГБ. Используемая редакция SQL-сервера и количество свободного места в базе данных отображается в отчете о состоянии системы (см. главное меню “Отчеты”).
Вам нужно очистить место в базе данных, удалив, например, старые журналы (главное меню “Администрирование” → “Системные параметры”).
Срок хранения данных в базе данных ЛЭРС УЧЕТ уменьшен, но программа выдает ту же ошибку. Как выполнить удаление старых журналов?
Чистим журнал, создайте запрос в MS SQL Server Management Studio
USE LERS;
GO
ALTER DATABASE LERS
SET RECOVERY SIMPLE;
GO
DBCC SHRINKFILE (Lers_log, 1);
И так же в настройках базы Lers убедитесь, что у вас стоит Простая Модель восстановления.
Для чистки журналов в БД Lers, можно пойти таким путем
use [LERS]
declare @t table (name varchar(255), [rows] varchar(255), reserved varchar(255), data varchar(255), index_size varchar(255), unused varchar(255));
delete from @t
insert into @t exec sp_MSforeachtable @command1='EXEC sp_spaceused ''?''',@whereand='or OBJECTPROPERTY(o.id, N''IsSystemTable'') = 1'
select * from @t order by CONVERT(bigint,REPLACE(data,' KB','')) DESC
так вы получите размер всех таблиц базы данных
потом достаточно удалить таблицу журналов с максимальным размером, например
USE LERS
TRUNCATE TABLE PollSessionLog
Или переведите ЛЭРС на версию SQL Server Standard, там нет лимитов на размер БД (ну почти нет :-): - 524 ПБ)
Пара ремарок.
Файл Lers_log содержит журнал транзакций, он не учитывается при расчете максимального размера базы данных. Для сжатия файла с данными нужно использовать Lers_Data.
SET RECOVERY SIMPLE как раз и задает простую модель восстановления базы данных. При простой модели восстановления журнал транзакций хранит только текущие транзакции и обрезается автоматически, поэтому обычно у него небольшой размер. Для сохранности данных, при использовании простой модели восстановления нужно обязательно настраивать автоматическое резервное копирование базы данных.
Айгерим, если вы не можете выполнить инструкцию сжатия данных, обратитесь в службу тех. поддержки ЛЭРС УЧЕТ, вам предоставят утилиту, которая выполнит инструкции по сжатию базы данных.
Столкнулся проблемой переполения базы.
В настройках базы Lers уже стоит Простая Модель восстановления.
Прошу помощи, может быть уже есть универсальная утилита для чистки и сжатия базы?
Если универсальной утилиты нет, прошу мне ,как неопытному пользователю SQl , привести список запросов SQL для очистки всех журналов.
Также увидел, что у меня на сервере было настроено автоматическое формирование шаблонов с сохранением в базу данных. Их наверное тоже надо удалить.
На форуме действует правило один вопрос, одна тема. Для получения ответа на ваш запрос необходимо завести новую тему.