Получение скриптов стандартных действий SQL Server Management Studio

Поговорим о том, как получить скрипты стандартных действий, заложенных в пользовательский интерфейс Management Studio.

Подменю «Скрипт» (Script)

В SQL Server все действия описываются на внутреннем языке T-SQL, расширении языка SQL. Однажды, вам будет недостаточно стандартных действий, заложенных в Management Studio, и потребуется писать свои скрипты. Некоторые скрипты, которые захочется написать, должны будут содержать действия аналогичные стандартным действиям, уже заложенных в пользовательском интерфейсе Management Studio. Например, мы хотим одним действием выполнить операции: создание полной резервной копии базы данных и ее восстановление в другую базу, перезаписав базу-приемник. Для создания такого скрипта мы можем обратиться к документации, например на MSDN и, изучив необходимые процедуры, написать скрипт. Но есть другой вариант, гораздо проще. Зная как эти действия выполняются в пользовательском интерфейсе Management Studio, мы можем получить скрипты этих действий и объединить в один.

Практически в любом диалоговом окне Management Studio присутствует кнопка-подменю «Скрипт» (Script), нажав на которую, будет выведен скрипт действия в новом окне запроса. Также, помимо вывода в новое окно, раскрыв подменю «Скрипт» (Script), появляется возможность выполнить действия: сохранение скрипта в файл, копирование скрипта в буфер и внесение скрипта в задание.

Management Studio: Подменю "Скрипт"
Подменю «Скрипт»

Давайте воспользуемся этим методом и напишем скрипт для создания резервной копии и ее восстановления в базу приемник.

Создание скрипта

Первым делом, в дереве «Обозревателя объектов» вызовем правой клавишей мыши контекстное меню базы, которую мы хотим забэкапить. Далее, перейдем: «Задачи» (Tasks) → «Создать резервную копию» (Back Up).

Management Studio: Контекстное меню создания резервной копии базы данных
Контекстное меню создания резервной копии базы данных

Перед нами появится диалоговое окно, в котором необходимо установить параметры выполнения резервного копирования. Настройки создания резервной копии выходят за рамки данной статьи, поэтому я выберу только тип резервной копии и ее имя. Расположение файла, сгенерированное автоматически, мне подходит.

Диалоговое окно создания резервной копии базы данных
Диалоговое окно создания резервной копии базы данных

После этого необходимо нажать на кнопку-подменю «Скрипт» (Script), после чего в новом окне будет выведен скрипт действия.

Скрипт создания резервной копии базы данных
Скрипт создания резервной копии базы данных

Для получения скрипта восстановления нам потребуется наличие данной резервной копии, поэтому, выполним полученный скрипт. Заодно, таким образом, проверим его работоспособность.

Еще одним необходимым шагом является создание пустой базы приемника, если таковой еще не существует. Поскольку создание резервной копии предполагает наличие базы данных, полагаю, отдельно останавливаться на вопросе создания базы не имеет смысла.

Теперь перейдем к скрипту восстановления базы данных. Аналогичным образом из контекстное меню базы источника выберем «Задачи» (Tasks) → «Восстановить» (Restore) → «Базу данных» (Database).

Management Studio: Контекстное меню восстановления базы данных
Контекстное меню восстановления базы данных

В открывшемся диалоговом окне необходимо выбрать базу приемник, база источник будет указана изначально верно, но проверить не повредит. В списке резервных копий необходимо выбрать ранее созданную.

Диалоговое окно восстановления базы данных
Диалоговое окно восстановления базы данных

На вкладке «Параметры» (Options) отметим опцию «Перезаписать существующую базу данных» (Overwrite the existing database)

Диалоговое окно восстановления базы данных. Параметры
Диалоговое окно восстановления базы данных. Параметры

Теперь опять нажмем на кнопку-подменю «Скрипт» (Script). Полученный скрипт перенесем в первый файл.

Скрипт создания резервной копии и восстановления в базу приемник
Скрипт создания резервной копии и восстановления в базу приемник

Наш скрипт готов. Теперь его можно сохранить и вызывать при необходимости. Другой его вариант использования — включить скрипт в план обслуживания (статья «Механизм «Планы обслуживания» и механизм заданий MS SQL Server») или добавить в задания.

В заключение

Данный пример лишь демонстрация возможного использования механизма генерации скриптов стандартных действий, но во многих случаях эта опция может сэкономить время и избежать ошибок при написании скрипта.

Связанные метки

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *