0. Зміст
1. Створення bat-файлу для копіювання на FTP-сервер
Про створення «батника» для копіювання довільного файлу на FTP-сервер, я вже писав в статті «Завантаження, завантаження і видалення файлів з FTP-сервера з командного рядка».
Але справа в тому, що ім'я файлу, отриманого в результаті резервного копіювання в SQL Server Management Studio, має приблизно такий вигляд:
що складається з імені бази, слова backup. дати і часу створення копії. Тому ім'я файлу необхідно «обчислювати» кожен раз від дати копіювання. В даному випадку - від поточної дати. Для побудові імені файлу резервної копії будемо використовувати наступний код bat-файлу:
Необхідно тільки вказати параметри підключення до FTP-сервера. Ім'я бази даних, каталог з копією на локальному комп'ютері і каталог на сервері тут задаються в якості параметрів. Відповідно, щоб скопіювати копію бази BASE1 з «C: \ Backup \ BASE1» на FTP-сервер в «Backup / SQL / BASE1» за сьогоднішнє число, необхідно виконати:
Аналогічним чином будуються файли для видалення старих копій з FTP-сервера. Відповідно до обраної стратегії резервного копіювання, нам необхідні «батники» для видалення копій місячної del_on_ftp_last_month.bat і річної del_on_ftp_last_year.bat давності.
2. Створення завдання Агента SQL Server для запуску bat-файлів
Потім в браузері об'єктів розкриємо вкладку «Агент SQL Server», кликнемо правою кнопкою миші по вкладці «Завдання» та в контекстному меню виберемо «Створити завдання».
Відкриється вікно нового завдання, введемо Ім'я та Опис і перейдемо на вкладку «Кроки».
Тут натиснемо кнопку «Створити». щоб додати крок в завдання.
Напишемо Ім'я кроку, тип виберемо «Операційна система (CmdExec)» і пропишемо команду для копіювання бази на FTP-сервер.
Потім перейдемо на вкладку «Додатково» і вкажемо:
- Дія при успіху: «Перейти до наступного кроку»;
- Дія при помилку: «Завершити завдання з помилкою»;
Після чого тиснемо «ОК».
Аналогічним чином створимо ще один крок, з командою видалення торішньої копії бази даних.
З тією лише різницею, що при успіху необхідно «Завершити завдання з успіхом».
Таким чином вийшло завдання, що складається з двох послідовних кроків.
Збережемо завдання натиснувши «ОК».
3. Додавання завдань в існуючий план обслуговування SQL Server
Ну і нарешті залишилося додати створене завдання в план обслуговування, який робить резервну копію бази даних master.
Для цього на вкладці «Плани обслуговування» виділимо необхідний план обслуговування, в «Панелі елементів» знайдемо пункт «Завдання« Виконання завдання агента SQL Server »» і перетягнемо його в вікно графічного представлення плану. У списку всіх існуючих завдань, виберемо необхідну нам задачу і натиснемо «ОК».