RESTORE не восстанавливает базу данных в исходное состояние - PullRequest
0 голосов
/ 12 июня 2019

Я работаю над файлом резервной копии (~ 9 Гб, не могу изменить) под SQL Server 2012, и мне часто приходится восстанавливать исходную базу, но я заметил, что файл журнала .ldf действительно работает огромный (> 20Gb сегодня), тогда как в первый раз это было около 1Gb.

Я пытался сжать файл журнала и ограничить размер файла журнала, но в следующий раз все еще восстанавливая на 20 ГБ, я удалил базу данных и очистил историю восстановления msdb, а также восстановил огромный файл .ldf ....

Я использую код:

USE [master]

ВОССТАНОВИТЬ БАЗУ ДАННЫХ [MYBASE] С DISK = N'D: \ SQLServer \ BACKUP \ MYBACKUP.bak 'WITH FILE = 1,

Переместить N'MYBACKUP 'в N'D: \ SQLServer \ DATA \ MYBASE.mdf',

Переместить N'MYBACKUP 'в N'D: \ SQLServer \ LOG \ MYBASE.ldf',

ЗАГРУЗКА, ЗАМЕНА, СТАТИСТИКА = 5

GO

Есть идеи?

Что-то не так с моим кодом?

1 Ответ

0 голосов
/ 12 июня 2019

Я не думаю, что есть какая-то другая возможность, кроме сжатия файла журнала после восстановления.

Вопрос, который вас интересует, заключается в том, почему файл журнала становится таким большим.Очень часто это происходит, когда режим восстановления установлен на «Полный», но резервное копирование файла журнала не выполняется, или, по крайней мере, очень редко, или когда в базе данных выполняются большие пакетные операции (например, большие операции импорта) - в последнем случаетребуется большой файл журнала, но размер файла не отражает количество данных в файле журнала.Сжатие имеет побочный эффект: при увеличении файла журнала требуется больше дискового ввода-вывода, что влияет на производительность.

Другая причина может заключаться в том, что значение автоматического увеличения файла журнала установлено в процентах.значение.Поэтому каждый шаг роста больше, чем предыдущий.Это может помочь при использовании значения в МБ, например, 50 МБ вместо 10% (но это действительно зависит от ваших потребностей, не принимайте эти значения как оптимальные для вашего случая).

С наилучшими пожеланиями Майкл

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...