Доставка журналов SQL Server: замена задания копирования на сжатие и копирование вручную
У меня есть два экземпляра SQL Server 2005 STANDARD edition, сервер A в Нью-Йорке и сервер B в Калифорнии.
Сервер А имеет большую базу данных; для целей DR/BCP я хотел бы использовать доставку журналов, чтобы сохранить горячую резервную копию на сервере B.
К сожалению, журналы транзакций слишком велики (более 10 ГБ в WAN =(). Прежде чем вкладывать средства в сторонний продукт, который занимается этой проблемой, могу ли я сделать что-то вроде этого:
1) Отключите задание копирования на сервере B. Резервные копии по-прежнему создаются на сервере A, но не переносятся автоматически на сервер B.
2) Создайте запланированное задание, чтобы сжать все резервные копии журналов на сервере A (используя такой инструмент, как 7zip или WinZip), и выгрузить их на сервер B, где их ожидает задание восстановления (и, разумеется, разархивировать).
3) Разрешить работу восстановления на сервере B работать в обычном режиме.
Это наивное или работоспособное решение?
Если бы у нас была корпоративная версия, я бы использовал асинхронное зеркалирование базы данных; или если бы у нас была редакция 2008 Enterprise, я бы посмотрел на встроенную компрессию.
2 ответа
Я считаю, что это будет работать нормально. Имейте в виду, что если вы не используете 2008, вам все равно придется искать какой-нибудь сторонний инструмент для сжатия.
Единственный реальный недостаток, который я вижу, это то, что вам нужно немного больше поддерживать, так как вы будете полагаться не только на SQL-сервер, чтобы выполнять эту работу.
Не создавайте другую запланированную задачу, поскольку время может испортиться. Измените существующие задания доставки журналов, создаваемые сервером sql, для резервного копирования и копирования журнала.
Здесь есть сообщение в блоге с решением, из которого вы можете позаимствовать некоторые или все части.