Размер файла журнала SQL Server 2008 большой и быстро растет - PullRequest
3 голосов
/ 16 июля 2010

В большинстве случаев пользователи обращаются к базе данных, чтобы прочитать новости. По транзакциям выполняется очень мало запросов. 95% обращений к базе данных будут предназначены только для чтения.

Размер файлов журнала моей базы данных увеличивается на 1 ГБ в день. Даже если я уменьшу базу данных, размер файла журнала не уменьшается. Что может быть причиной увеличения размера файла журнала все больше и больше? Как я могу это контролировать? Насколько мне известно, файл журнала не увеличивается, когда мы читаем данные из таблиц.

Есть предложения, как бороться с ростом файла журнала? Как сохранить приемлемый или разумный размер? Влияет ли это на производительность?

Ответы [ 4 ]

2 голосов
/ 17 июля 2010

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

Чтобы установить простое ведение журнала базы данных (но только если вы выполняете полное резервное копирование базы данных!).

  1. Щелкните правой кнопкой мыши в вашей базе данных
  2. Выберите Свойства
  3. Выберите Функции
  4. Установить режим восстановления на , простой

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

Если вы будете использовать технику резервного копирования «Дедушка, папа и сын», что означает Ежемесячное полное резервное копирование , Еженедельное полное резервное копирование , а затем каждые дневное инкрементное резервное копирование . Тогда для этого вам нужно Режим полного восстановления . Если 1 ГБ журнала в день все еще слишком много, вы можете включить инкрементное резервное копирование в час или в течение 15 минут. Это должно решить проблему роста журнала все больше и больше.

Если вы запускаете полное резервное копирование каждый день, вы можете переключить его в простой режим восстановления, и у вас все будет в порядке, не рискуя своими данными (если вы можете уйти с возможным 1 днем ​​потери данных). Если вы планируете использовать инкрементный режим, оставьте его на Режим восстановления полный .

1 голос
/ 17 июля 2010

Полное резервное копирование не поможет, вы должны регулярно делать резервные копии журнала транзакций (а также регулярных полных и разностных резервных копий базы данных) для его очистки. Если вы не выполняете резервное копирование журнала и не находитесь в простом режиме восстановления, то в вашем журнале транзакций содержатся все транзакции с момента создания базы данных. Если у вас есть достаточно действий, которые вы увеличиваете на один день в день, то у вас также может быть большой импорт или обновления, затрагивающие сразу несколько записей. Возможно, вам нужно находиться в простом режиме восстановления, где транзакции не регистрируются индивидуально. Однако НЕ делайте этого, если у вас есть смесь данных от импортеров и пользователей. В этом случае вам необходимо часто выполнять резервное копирование журнала транзакций, чтобы иметь возможность поддерживать управляемый размер и на определенный момент времени. Мы создаем резервную копию нашего журнала транзакций каждые 15 минут.

Прочтите о резервных копиях журналов транзакций в BOL, чтобы узнать, как исправить неисправность, которая у вас есть прямо сейчас. Затем настройте и запустите ваши резервные копии. Вы должны прочитать и понять все это, прежде чем пытаться исправить. Прямо сейчас вы, вероятно, окажетесь в мире боли, если ваш сервер выйдет из строя и вам придется восстанавливать базу данных. Резервные копии журнала транзакций имеют решающее значение для правильного восстановления после сбоя.

0 голосов
/ 03 апреля 2015

Основной причиной большого размера файла журнала является массовая транзакция в БД.Чтобы уменьшить размер файла журнала, лучше всего выполнить резервное копирование журнала транзакций через определенный промежуток времени.

0 голосов
/ 16 июля 2010

Вы часто делаете резервную копию своей базы данных?Вам необходимо выполнить полное резервное копирование и / или резервное копирование журнала транзакций, чтобы SQL Server рассмотрел возможность сжатия файла журнала.

...