Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Имеются филиалы по всей России. И один (!!!) резервный сервер в Москве для них (ну вот так вот). Причем они достаточно разные по логинам и репликациям. Бекапы доставляются на третий сервер в режиме логшипинга. И если с третьего на резервный база копируется через подмену пустой, предварительно созданной на резервном, то вариант бекапов msdb и distribution и последующим восстановлением на резервном сервере не подходит. Со скриптом генерации логинов все понятно - есть статья на сайте Microsoft об этом. А вот с джобами и публикациями не совсем понятно. Было принято решение генерить джобы и публикации, складывать это в обычный текстовый файлик и отправлять на резервный в таком виде.
Как с помощью T-SQL запустить команду в теле скрипта генерации скрипта создания джоба и публикаций?
28 ноя 13, 10:06    [15203631]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ёжик25
Как с помощью T-SQL запустить команду в теле скрипта генерации скрипта создания джоба и публикаций?

exec master..xp_cmdshell 'команда'
28 ноя 13, 10:41    [15203881]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Glory,

Уважаемый, какая команда? нужна команда, которая бы создавала скрипт для генерации джоба.
28 ноя 13, 10:44    [15203895]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ёжик25
нужна команда, которая бы создавала скрипт для генерации джоба.

Такой команды в TSQL нет
28 ноя 13, 10:45    [15203904]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Glory,

Т.е. действие на языке T-SQL, аналогичное выбору Scroipt Job As -> Create To в Management Studio
28 ноя 13, 10:46    [15203908]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Glory,

Как же так. Я думал, любое действие теоретически можно повторить скриптами в MS SQL.
Что же делать? Как можно все же это осуществить?
28 ноя 13, 10:47    [15203915]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ёжик25
Что же делать? Как можно все же это осуществить?

Так же как "Со скриптом генерации логинов все понятно - есть статья на сайте Microsoft об этом." - написать процедуру генерации скрипта. Или утилиту, на основе модели SQL Server Management Objects (SMO)
28 ноя 13, 10:54    [15203976]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31780
Ёжик25
Что же делать? Как можно все же это осуществить?
Обычно исходники прог пишутся руками.

Генерация исходников из работащей системы - это всё таки экстрим, хотя в принципе иногда так делают.
28 ноя 13, 10:58    [15203993]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31780
Ёжик25
Как можно все же это осуществить?
Осуществить можно так же, как это делает SSMS - наприсать программу, которая генерит скрипт. Но функции "получить скрипт" нету, придётся всё это собирать из маленьких кусочков.
Проще всё таки писать сразу создание публикаций скриптами.
28 ноя 13, 11:00    [15204015]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
alexeyvg,

филиалов около 100, переодически удаляются\добавляются бизнес-джобы и публикации, и отслеживать это все по 100 сервакам очень муторно. Хочется замутить джоб, который будет раз в сутки собирать инфу по всем джобам и в файл писать их генерацию, что бы при восстановлении достаточно было этот скрипт запустить - и все джобы восстановлены.
28 ноя 13, 11:29    [15204313]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ёжик25
филиалов около 100, переодически удаляются\добавляются бизнес-джобы и публикации, и отслеживать это все по 100 сервакам очень муторно. Хочется замутить джоб, который будет раз в сутки собирать инфу по всем джобам и в файл писать их генерацию, что бы при восстановлении достаточно было этот скрипт запустить - и все джобы восстановлены.

Вы знаете, что такое бэкап ? И что базу msdb тоже можно бэкапить ?
28 ноя 13, 11:31    [15204339]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Glory,

Уважаемый гуру, а вы прочитать правильно можете мое первое сообщение?
Там четко написано: "вариант бекапов msdb и distribution и последующим восстановлением на резервном сервере не подходит". ну вот не подходит и все тут! Большие они очень (до 10гб база msdb может доходить), и тянуть их каждый день на сервер логшиппинга с филиалов вообще не вариант
28 ноя 13, 11:57    [15204609]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ёжик25
ну вот не подходит и все тут!

Ну вот не умею и все тут !
Хочу так, как хочу и все тут !
Ёжик25
Большие они очень (до 10гб база msdb может доходить), и тянуть их каждый день на сервер логшиппинга с филиалов вообще не вариант

Managing Jobs Across an Enterprise - не, не слышал
28 ноя 13, 12:00    [15204639]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Glory,

Нет, Managing Jobs Across an Enterprise не подходит. Резервный сервер всегда должен быть "нулевый".
Как я понял, осуществить данную задачу можно только методом поиска информации в нужной таблице и встравке ее в нужные процедуры?
28 ноя 13, 12:29    [15204981]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ёжик25
Нет, Managing Jobs Across an Enterprise не подходит

Т.е. вам не подходит ни одно из стандартных решений ? Кто-то сильно постарался с проектированием

Ёжик25
Резервный сервер всегда должен быть "нулевый".

В чем заключается его "нулевость", если он один на много филиалов ?
Ёжик25
Как я понял, осуществить данную задачу можно только методом поиска информации в нужной таблице и встравке ее в нужные процедуры?

Перечитать внимательно 15203976
28 ноя 13, 12:38    [15205077]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Ёжик25
Member

Откуда: оттуда
Сообщений: 360
Glory,

Еще раз повторяю, филиальные сервера сами по себе разные. Тут одни базы, там другие, тут есть репликация и одни бизнес-джобы, так другие. Кроме того, базы могут называться даже одинаково, при этом быть разными по содержанию. И хранить джобы со всех серверов не вариант.

Под "нулевостью" я имел ввиду то, что на нем будет стоять пустой MS SQL Server и крутиться на нем ничего не будет, до ситуации инцидента конечно же.

Вариант с SQL Server Management Objects так же не подходит. Надо все реализовать стандартными средствами SQL Server, стандартным T-SQL.
28 ноя 13, 13:27    [15205610]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ёжик25
Надо все реализовать стандартными средствами SQL Server, стандартным T-SQL.

Реализовывайте.
Если есть время и ресурсы.
28 ноя 13, 13:30    [15205639]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 34728
Блог
Ёжик25,

не совсем понятно, почему не отправлять на резервный сервер сами базы? msdb обычно имеет крайне малый размер,
а каждый филиал резервируется в свою папку
28 ноя 13, 14:15    [15206031]     Ответить | Цитировать Сообщить модератору
 Re: Функция Script Job AS -> Create to в теле скрипта  [new]
Glory
Member

Откуда:
Сообщений: 104760
Критик
msdb обычно имеет крайне малый размер,

А у ТС каким то образом только бэкап этой базы имеет размер в 10Гб
28 ноя 13, 14:17    [15206049]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить