Эта часть T-SQL устарела в 2005 году:
BACKUP LOG [DB_NAME] WITH TRUNCATE_ONLY
Мне не нужно хранить резервную копию журнала для моей базы данных, но я не хочу, чтобы этот фрагмент кода перестал работать, если в будущем мы перенесем его на SQL2008 или последующие версии.
Ваше здоровье





Если вы измените модель восстановления базы данных на Простую, я думаю, она перестанет заставлять вас делать резервную копию / усекать журнал.
Переключите режим восстановления базы данных на SIMPLE, а затем используйте DBCC SHRINKFILE. Затем восстановите исходный режим восстановления. Если ваш файл журнала не сжимается, возможно, у вас есть незафиксированные транзакции. Подробнее см. Статью Тибора Караси о сокращение.
есть ли другой способ сжать журнал (без использования устаревшего T-SQL выше) без перехода в простой режим?
Если вы не в простом режиме, вы должны сделать резервную копию журнала. Глядя на BOL за 2008 год, мне кажется, что эта команда устарела, чтобы заставить людей делать резервную копию журнала, поскольку единственный метод, который я нашел для усечения журнала, - это сделать резервную копию, если вы не находитесь в простом режиме.
есть ли какая-то функция, которую я потеряю, если переключусь в простой режим?
Измените свою базу данных, чтобы использовать простую модель восстановления. Это означает, что у вас нет восстановления на определенный момент времени (у вас его все равно не будет, если вы усекаете журнал), но файл журнала автоматически циклически повторяется и не становится слишком большим.
Файл журнала является обязательным, и у вас нет другого выбора, кроме как сохранить его, чего вы не хотите, так это того, чтобы он вышел из-под контроля и заполнил ваш диск.
Я имел в виду, что мне не нужно хранить резервную копию журнала
Как ответил Энди Джонс, файл журнала является обязательным. Это не просто журнал событий для вас, это жизненно важная часть того, как база данных обрабатывает откаты транзакций, а также фиксации памяти.
Я имел в виду, что мне не нужно хранить резервную копию журнала
и вы также потеряете восстановление на определенный момент времени. вам следует делать это только в том случае, если вы знаете, что означает переход в «простой» режим.