У меня есть неверсия для предприятий SQL Server 2008. Я делаю ночные резервные копии, вручную архивирую файлы и затем вручную копирую в удаленный сервер.
Я должен автоматизировать это использование пакетные файлы. Копирование файлов с сервера на сервер легко, но как я автоматизирую архивирование резервного копирования сначала?
Полный процесс, в котором я нуждаюсь:
Я признаюсь, что часть сжатия отбросила меня. Любой совет был бы очень одобрен.
Заранее спасибо.
вы не указываете утилиту zip, которую используете. Их много, но я предпочитаю использовать Winzip, так как это основной инструмент для работы с zip. Winzip имеет интерфейс командной строки ( http://www.winzip.com/prodpagecl.htm ), который представляет собой бесплатное дополнение к winzip, которое можно вызвать из командной строки.
Другой альтернативой может быть использование cygwin и tar.gz через командную строку.
Если вы просто застряли на том, как сжать из пакетного скрипта:
Чтобы получить уникальное имя файла, я обычно вставляю дату/время: yyyymmddhhMMss-backup.7z
Вы можете архивировать файлы из командной строки, например, с помощью RAR . Просто добавьте команды ZIP туда, куда вы делаете копирование. Если это в T-SQL, вы можете выполнить команду ZIP, используя xp_cmdshell .
Если вам нужен роскошный вариант, ознакомьтесь с Red Gate Backup , он делает этот процесс довольно безболезненным.
Поскольку у вас 2008, у вас установлен Powershell. Я бы посоветовал посмотреть на сценарий psh, выполняемый после успешного резервного копирования, для сжатия и копирования по сети. Скорее всего, это будет второй этап работы после резервного копирования.
Вы также можете пойти по старинке и написать командный файл для сжатия и копирования. Затем вызовите это как шаг задания cmdshell, снова после задания / шага резервного копирования.
если вы программист, вы можете сделать приложение, которое получит резервную копию вашей базы данных от SMO и заархивирует этот файл в .gz файл с помощью доступных библиотек.
Вы можете (и должны!) определенно исследовать планы обслуживания SQL Server планы обслуживания.
Они позволяют автоматизировать такие вещи, как
Я не уверен, что они имеют встроенную поддержку для архивирования и копирования на удаленный сервер, но вы определенно можете автоматизировать резервное копирование с помощью плана обслуживания, а остальное - с помощью командного файла.