Инструкция по эксплуатации Acronis Backup for Windows Server Essentials - User Guide
Страница 325
325
Copyright © Acronis International GmbH, 2002-2014
3.
Переключите базу данных обратно на полную модель восстановления (Full) или модель
восстановления с неполным протоколированием (Bulk-logged) таким же способом, как в
шаге 1.
Автоматизация усечения журнала и уменьшения его размера
Вышеописанную процедуру усечения можно автоматизировать с помощью сценария и, если
потребуется, добавить уменьшение размера файла журнала. Если добавить сценарий к
команде, выполняемой после резервного копирования (стр. 137), журналы будут усечены, а их
размер будет сокращен сразу после создания резервной копии. Этот метод предполагает, что
вы умеете писать сценарии Transact-SQL и знакомы с утилитой sqlcmd.
Дополнительные сведения о языке Transact-SQL и утилите sqlcmd см. в следующих статьях:
Использование Transact-SQL: http://technet.microsoft.com/ru-ru/library/ms189826(v=sql.90)
Использование утилиты sqlcmd:
http://technet.microsoft.com/ru-ru/library/ms170572(SQL.90).aspx
Как автоматизировать усечение журнала транзакций и уменьшение его размера для
одного экземпляра SQL
1.
Используя следующий шаблон, создайте сценарий, который усечет файлы журнала для баз
данных экземпляра и уменьшит их размер:
USE database_name
ALTER DATABASE имя_базы_данных SET RECOVERY SIMPLE;
DBCC SHRINKFILE(имя_файла_журнала);
ALTER DATABASE имя_базы_данных SET RECOVERY FULL;
В последней строке значение SET RECOVERY зависит от исходной модели восстановления
конкретной базы данных и может быть FULL или BULK_LOGGED.
Пример экземпляра с двумя базами данных (TestDB1 и TestDB2):
USE TestDB1;
ALTER DATABASE TestDB1 SET RECOVERY SIMPLE;
DBCC SHRINKFILE(TestDB1_log);
ALTER DATABASE TestDB1 SET RECOVERY FULL;
USE TestDB2;
ALTER DATABASE TestDB2 SET RECOVERY SIMPLE;
DBCC SHRINKFILE(TestDB2_log);
ALTER DATABASE TestDB2 SET RECOVERY BULK_LOGGED;
2.
Добавьте следующую команду sqlcmd к команде, выполняемой после резервного
копирования (стр. 137):
sqlcmd -S myServer\instanceName -i C:\myScript.sql
Куда:
myServer — имя сервера;
instanceName — имя экземпляра;
C:\myScript.sql — путь к файлу сценария, созданному в шаге 1.
Как автоматизировать усечение журнала транзакций и уменьшение его размера для
нескольких экземпляров SQL
Если на машине несколько экземпляров, к которым нужно применить вышеописанную
процедуру, сделайте следующее.
1.
Создайте отдельный файл сценария для каждого экземпляра (например, C:\script1.sql и
C:\script2.sql).