четверг, 14 ноября 2013 г.

Почистить transaction log в случае его переполнения

Ситуация не стандартная, но если recovery mode стоит в full, то почистить переполнившийся transaction log не получится, потому что в него не получится записать информацию о чистке transaction log-а. Т.к. все время забываю, пусть скрипт для этого здесь полежит.
USE ИмяБазыДанных

ALTER DATABASE ИмяБазыДанных SET RECOVERY SIMPLE

DBCC SHRINKFILE (ЛогическоеИмяФайлаСЛогом, РазмерВмегабайтах);

ALTER DATABASE ИмяБазыДанных SET RECOVERY FULL