Альтернатива BACKUP LOG с TRUNCATE_ONLY - PullRequest
4 голосов
/ 07 ноября 2008

Эта часть T-SQL устарела в 2005 году:

BACKUP LOG [DB_NAME] WITH TRUNCATE_ONLY

Мне не нужно сохранять резервную копию журнала для моей базы данных, но я не хочу, чтобы часть кода перестала работать, если в будущем мы перейдем на SQL2008 или последующие версии.

Приветствия

Ответы [ 4 ]

6 голосов
/ 07 ноября 2008

Переключите режим восстановления базы данных на SIMPLE, а затем используйте DBCC SHRINKFILE. Затем восстановите свой исходный режим восстановления. Если ваш файл LOG не сжимается, возможно, у вас есть незафиксированные транзакции. Для получения более подробной информации см. Статью Тибора Караси о сокращении .

1 голос
/ 07 ноября 2008

Измените базу данных, чтобы использовать простую модель восстановления. Это означает, что у вас нет восстановления на определенный момент времени (у вас его никогда не будет, если вы усекаете свой журнал), но файл журнала автоматически циклически повторяется и не становится слишком большим.

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

1 голос
/ 07 ноября 2008

Если вы измените модель восстановления базы данных на Simple, я думаю, она перестанет заставлять вас делать резервные копии / обрезать журнал.

0 голосов
/ 07 ноября 2008

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

...