SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Microsoft SQL Server » Скрипт как усекать лог при условии если он вырос до определенного размера
Скрипт как усекать лог при условии если он вырос до определенного размера [сообщение #5215] Tue, 16 July 2024 13:58 Переход к следующему сообщению
keepermode в настоящее время не в онлайне  keepermode
Сообщений: 23
Зарегистрирован: May 2023
Junior Member
Добрый день.
Помогите сделать скрипт для усечения лога при условии если он вырос до определенного размера

USE [Base]
ALTER DATABASE [Base] SET RECOVERY SIMPLE
DBCC SHRINKFILE(N'Base_log', 100)
ALTER DATABASE [Base] SET RECOVERY FULL
Re: Скрипт как усекать лог при условии если он вырос до определенного размера [сообщение #5216 является ответом на сообщение #5215] Tue, 16 July 2024 20:38 Переход к предыдущему сообщениюПереход к следующему сообщению
Back in USSR в настоящее время не в онлайне  Back in USSR
Сообщений: 23
Зарегистрирован: June 2024
Junior Member
После того как вернешь рековери модел назад в фул, не забудь сделать полный бакап, иначе следубщтие бакапы провалятся.

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

У команды ДБЦЦ есть параметр процент заполнение лога, сделай алерт на этот параметр или джоб который запускается каждые 15 минут и проверяет процент, при превышении которого лог бакапится, как то так.
Re: Скрипт как усекать лог при условии если он вырос до определенного размера [сообщение #5217 является ответом на сообщение #5215] Tue, 16 July 2024 20:39 Переход к предыдущему сообщению
Back in USSR в настоящее время не в онлайне  Back in USSR
Сообщений: 23
Зарегистрирован: June 2024
Junior Member
keepermode писал(а) Tue, 16 July 2024 13:58
Добрый день.
Помогите сделать скрипт для усечения лога при условии если он вырос до определенного размера

USE [Base]
ALTER DATABASE [Base] SET RECOVERY SIMPLE
DBCC SHRINKFILE(N'Base_log', 100)
ALTER DATABASE [Base] SET RECOVERY FULL

https://learn.microsoft.com/en-us/sql/t-sql/database-console -commands/dbcc-sqlperf-transact-sql?view=sql-server-ver16
Предыдущая тема: Каскадное удаление данных
Следующая тема: Не получается связать таблицы в БД SQL Menegement Studio
Переход к форуму:
  


Текущее время: Sun Dec 22 14:16:42 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00947 секунд