файл журнала слишком большой и недостаточно места

файл журнала слишком большой и недостаточно места

У меня есть файл журнала на 88 ГБ для базы данных, размещенной на SQL Server 2008, который я пытаюсь скопировать с помощью резервного копирования журнала транзакций, чтобы затем уменьшить его. Проблема в том, что у меня недостаточно места ни на C, ни на D, что делает это ловушкой 22.

Что я могу сделать, чтобы сжать журнал? Могу ли я принудительно сжать его, не делая резервную копию? Если могу, то какие последствия это может иметь?

Спасибо...

решение1

Вы можете переключить режим восстановления на простой, а затем снова на полный. Тогда вы сможете сжать его и начать снова с этой точки.

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

решение2

Почему бы не приобрести внешний USB-жёсткий диск, не подключить его к серверу и не выполнять резервное копирование на этот диск?

решение3

BACKUP LOG <DatabaseName>  WITH TRUNCATE_ONLY

Это было за 2005 год. Извините, я не увидел теги — было бы лучше, если бы эта информация была в теме или в тексте вопроса.

В любом случае, я погуглил это для вас:

http://social.msdn.microsoft.com/Forums/en-US/transactsql/thread/d64dc18b-52f8-4c8b-8be2-1a837988776e

От: Ник Кавадиас

Вы можете отправить файл в битовый контейнер с помощью обычной команды BACKUP LOG:

BACKUP
 LOG
 DBNAME TO
 DISK
='NUL'

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

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

решение4

Если у вас есть редакция SQL2008 Enterprise, вы можете попробовать запустить сжатый бэкап журнала. Или, как упоминалось выше, вы можете перевести базу данных в простой режим и выполнить полный бэкап — однако вы потеряете возможность выполнять восстановление на момент времени.

Связанный контент