- Создание плана обслуживания в Microsoft SQL Server 2008 R2 на примере автоматического резервирования баз данных
- 0. Оглавление
- 1. Исходные данные
- 2. Проверка работы Агента SQL Server
- 3. Создание плана обслуживания
- 4. Запуск выполнения плана обслуживания
- Смотрите также:
- Создание плана обслуживания
- Перед началом
- Ограничения
- Предварительные требования
- безопасность
- Permissions
- Использование среды SQL Server Management Studio
- Создание плана обслуживания с помощью мастера планов обслуживания
- Создание планов обслуживания при помощи области конструктора
- Использование Transact-SQL
- Создание плана обслуживания
- Настройка плана обслуживания MS SQL Server для 1С Предприятия
- Создание полного бэкапа базы.
- Создание разностного бэкапа.
- Очистка устаревших бэкапов.
- Дефрагментация индекса (реорганизация или перестроение).
- Обновление статистики.
Создание плана обслуживания в Microsoft SQL Server 2008 R2 на примере автоматического резервирования баз данных
Ниже будет рассказано, как создать план обслуживания в Microsoft SQL Server 2008 R2 с помощью программы «Среда SQL Sever Management Studio». В данной статье я просто постараюсь наглядно описать алгоритм создания плана обслуживания с помощью Мастера планов обслуживания, не вдаваясь в теоретическую часть вопроса. Получить больше информации по данной области можно изучив электронную документацию по SQL Server на сайте MSDN.
В описанный ниже план будут входить всего 2 задачи.
- Резервное копирование базы данных.
- Проверка целостности базы данных.
Я надеюсь, что после ознакомления с данной инструкцией, в дальнейшем каждый сможет самостоятельно создать любой требуемый план обслуживания SQL сервера.
0. Оглавление
1. Исходные данные
- Операционная система семейства Windows (в моем примере используется Microsoft Windows Server 2008 R2)
- Установленный Microsoft SQL Server 2008 R2 (об установке SQL Server можно прочитать здесь)
- Существующая база данный в SQL Server (о создании баз данных в SQL Server читайте здесь)
- Настроенная компонента Database Mail, в случае если требуется уведомлять по электронной почте операторов о результатах выполнения плана обслуживания (о том как настроить компоненту Database Mail и создать оператора системы я писал здесь).
2. Проверка работы Агента SQL Server
Первое что нам необходимо сделать, это убедиться что Агент SQL Server установлен и работает. Для этого запустим оснастку «Службы» («Пуск» (Start) — «Администрирование» (Administrative Tools) — «Службы» (Services) ) и в списке служб найдем службу «Агент SQL сервер» (SQL Server Agent).
Откроем свойства этой службы (кликнув по ней 2 раза) и убедимся что:
- Тип запуска стоит «Автоматически» (Startup type: Automatic);
- Состояние «Работает» (Service status: Started);
В противном случае, необходимо изменить параметры как на скриншоте выше и сохранить настройки нажав «Применить» (Apply) .
Теперь запустим программу «Среда SQL Sever Management Studio» ( «Пуск» (Start) — «Все программы» (All programs) — «Microsoft SQL Server 2008 R2» — «Средства SQL Server 2008 R2«) и введем данные для авторизации.
После чего, еще раз убедимся что Агент SQL Server работает (в обозревателе объектов должна быть вкладка «Агент SQL Server» (SQL Server Agent) с зеленой иконкой слева.
3. Создание плана обслуживания
Теперь перейдем непосредственно к созданию плана обслуживания. В обозревателе объектов (Object Explorer) раскроем вкладку «Управление» (Management), кликнем правой кнопкой мыши по вкладке «Планы обслуживания» (Maintenance Plans) и в контекстном меню выберем «Мастер планов обслуживания» (Maintenance Plan Wizard) .
В запустившемся мастере планов обслуживания на странице приветствия нажимаем «Далее» (Next) и в следующем окне вводим имя и описание нового плана.
Затем необходимо определиться с расписанием, по которому будет выполняться данный план обслуживания. Для этого установим переключатель на «Единое расписание для всего плана или без расписания» (Single schedule for the entire plan ore no schedule) и нажмем «Изменить…» (Change…) для назначения расписания.
Откроется окно «Свойства расписания задания» . Здесь зададим те параметры, согласно которым должен выполняться план обслуживания и нажмем «ОК» . В моем примере это:
- Выполняется — «Еженедельно» (Occurs — Weekly);
- Повторяется каждые — «1 нед.» в «Воскресенье» (Recurs every: 1 week(s) on Sunday);
- Выполняться один раз в день в: — «2:00:00» (Occurs onсe at: «2:00:00»);
Еще раз убедимся, что расписание задано верно, и нажмем «Далее» (Next) .
Здесь выберем те задачи, которые будет выполнять наш план обслуживания. В моем примере это:
- Проверка целостности базы данных (Check Database Integrity);
- Резервное копирование базы данных (полное) (The Back Up Database (Full));
Заметьте, что для каждой задачи приводится ее краткое описание в поле снизу. Выбрав необходимые задачи, жмем «Далее» (Next) .
Теперь необходимо задать порядок выполнения задач, используя кнопки «Вверх…» (Move Up) и «Вниз…» (Move Down). Установив порядок, жмем «Далее» (Next) .
Здесь требуется задать параметры для каждой задачи в плане. Первая задача в нашем списке это «Копирование БД (полное)» (Back Up Database (Full)).
Прежде всего необходимо выбрать базы данных для резервного копирования, нажав на кнопку выбора списка «Определенные базы данных» (Select one ore more). Выбрав необходимые для резервного копирования базы данных, нажимаем «ОК» .
Ниже зададим размещение и срок хранения резервных копий, а также установим дополнительные параметры:
- Если установить переключатель «Создать файл резервной копии для каждой базы данных» (Create a backup file for every database) , то при выполнении задания в выбранной директории будет создаваться несколько файлов резервных копий с именами, соответствующими названиям баз данных. Ну а установка флага «Создавать вложенный каталог для каждой базы данных» (Create a sub-directory for each database) разложит файлы по отдельным папкам. Обратите внимание, что необходимо оставить заполненным расширение файла резервной копии.
- Установка флага «Срок действия резервного набора данных истекает» (Backup set will expire) указывает SQL-серверу, когда этот набор может быть перезаписан без явного пропуска проверки на истечение срока.
- Для наибольшей надежности, можно установить флаг «Проверять целостность резервной копии» (Verify backup integrity).
- Также рекомендую выбрать режим «Сжимать резервные копии» (Compress backup) для экономии дискового пространства, если используемая версия SQL Server поддерживает данную функцию.
Если дисковое пространство ограничено, можно также выбрать один файл для хранения резервной копии, который будет перезаписываться после каждого выполнения плана обслуживания. Для этого установим соответствующий переключатель на «Создать резервную копию баз данных в одном или нескольких файлах» (Back up databases across one ore more files) и указжем соответствующее имя файла (будьте внимательны, файл резервной копии следует задавать с расширением .bak), а также выберем режим «Перезаписать» в случае, если файлы резервной копии существуют (If backup files exist: Overwrite).
Определившись с настройками жмем «Далее» (Next).
Теперь очередь задачи «Проверка целостности базы данных» (Database Check Integrity). Для нее всего лишь необходимо выбрать базу данных. В моем примере это все та же база данных, что и на предыдущем шаге. Определившись с базами, жмем «Далее» (Next).
На следующей странице возможно выбрать директорию, куда будет сохраняться лог выполнения задания, а также указать оператора SQL Server для отправки отчета по электронной почте. Задав параметры, снова жмем «Далее» (Next).
Проверим еще раз все настройки плана обслуживания, и если все верно, нажимаем «Готово» (Finish).
Мастер начнет построение плана обслуживания. Если мастер не обнаружит ошибок, то увидим сообщение об успешном построении плана. В противном случае необходимо устранить ошибки и повторить процедуру снова. Закроем окно, нажав «Закрыть» (Close).
4. Запуск выполнения плана обслуживания
Для запуска выполнения плана обслуживания перейдем в программу «Среда Microsoft SQL Server Management Studio». Здесь, раскрыв вкладку «Планы обслуживания» (Maintenance Plans) увидим наш только что созданный план. Чтобы проверить его работу, кликнем по нему правой кнопкой мыши, и в контекстном меню выберем пункт «Выполнить» (Execute) .
После чего запустится окно выполнения плана обслуживания, в котором, спустя необходимое количество времени, должно появиться сообщение об успешном выполнении.
А в соответствующих директориях должны появиться файл резервной копии
и файл лога выполнения плана.
Открыв, этот файл, вы должны увидеть примерно следующее:
Если все так, поздравляю! План обслуживания SQL Server создан и работает.
Смотрите также:
Ниже приведена пошаговая инструкция, показывающая как добавить новую базу данных в Microsoft SQLServer 2012 (в более старых редакциях, например в Microsoft SQL Server 2008 R2, набор действий аналогичен). Запускаем…
В данной статье будет рассказано как вручную сделать полную резервную копию базы данных в SQL Server 2008 R2 с помощью программы «Среда Microsoft SQL Server Management Studio». 0.…
Продолжаем развертывать Microsoft SQL Server 2008 R2. После установки необходимо добавить пользователя для работы с БД, и, соответственно, создать новую базу данных. Ниже будет рассказано как это сделать. …
Источник
Создание плана обслуживания
Применимо к: SQL Server (все поддерживаемые версии)
В этом разделе описывается создание плана обслуживания одного или нескольких серверов в SQL Server с помощью среды SQL Server Management Studio или Transact-SQL. В среде Среда Management Studioможно создавать планы обслуживания двумя способами: с помощью мастера планов обслуживания или рабочей области конструирования. Мастер лучше подходит для создания простых планов обслуживания, а конструктор позволяет использовать расширенные возможности рабочего процесса с потоком операций.
В этом разделе
Перед началом работы
Для создания плана обслуживания используется:
Перед началом
Ограничения
Для создания многосерверного плана обслуживания необходимо настроить многосерверную среду, содержащую один главный сервер и один или несколько целевых серверов. План многосерверного обслуживания необходимо создать и хранить на главном сервере. На целевых серверах эти планы можно просматривать, но нельзя хранить.
Предварительные требования
безопасность
Permissions
Для создания планов обслуживания и работы с ними пользователь должен быть членом предопределенной роли сервера sysadmin .
Использование среды SQL Server Management Studio
Создание плана обслуживания с помощью мастера планов обслуживания
В обозревателе объектов щелкните знак «плюс», чтобы развернуть сервер, где нужно создать план обслуживания.
Щелкните знак «плюс», чтобы развернуть папку Управление .
Щелкните правой кнопкой мыши папку Планы обслуживания и выберите пункт Мастер планов обслуживания.
Выполните предлагаемые мастером шаги, чтобы создать план обслуживания. Дополнительные сведения см. в статье Use the Maintenance Plan Wizard.
Создание планов обслуживания при помощи области конструктора
В обозревателе объектов щелкните знак «плюс», чтобы развернуть сервер, где нужно создать план обслуживания.
Щелкните знак «плюс», чтобы развернуть папку Управление .
Щелкните правой кнопкой мыши папку Планы обслуживания и выберите команду Создать план обслуживания.
Использование Transact-SQL
Создание плана обслуживания
В обозревателе объектов подключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
Источник
Настройка плана обслуживания MS SQL Server для 1С Предприятия
Для сохранения целостности структуры баз данных и обеспечения нормальной производительности необходимо проводить периодическое обслуживание. В этой статье рассмотрим какие задания по обслуживанию необходимо выполнять для баз данных 1С Предприятия, размещенных в MS SQL.
Настройка плана обслуживания баз данных MS SQL Server выполняется через программу Microsoft SQL Management Studio. Рассмотрим задачи, которые мы будем выполнять в рамках регулярного обслуживания баз данных:
В чем отличие полного бэкапа от разностного?
Полное резервное копирование сохраняет всю базу данных целиком.
Разностное резервное копирование сохраняет все изменения созданные в базе данных с момента последнего полного бэкапа.
Такой подход к резервному копированию позваляет экономить свободное пространство на носителях информации.
Создание полного бэкапа базы.
В обозревателе объектов переходим к пункту «Управление \ Планы обслуживания». В контекстном меню выбираем «Создать план обслуживания».
В этом основном плане обслуживания будем создавать вложенные планы полного бэкапа, промежуточного (разностного) бэкапа, перестроение индекса и обновление статистики.
В созданном плане нажимаем кнопку «Добавление вложенного плана«
Вводим название «Полный бэкап» и описание. Задаем расписание для выполнения задания: Раз в неделю в воскресенье в 2:00.
Добавляем в созданный план задание. Для этого с панели элементов перетаскиваем в поле заданий вложенного плана элемент с названием Задача «Резервное копирование базы данных».
Открываем задание на редактирование: правой клавишей мыши по заданию, выбираем пункт «Изменить».
- Тип резервной копии: Полное;
- Базы данных: если выбрать «Все пользовательские базы данных», то будет выполняться бэкап всех созданных вами баз данных, но есть возможность указать на конкретные базы;
- Создать файл резервной копии для каждой базы данных: отмечаем пункт «Создавать вложенный каталог для каждой базы данных», чтобы удобнее было ориентироваться в бэкапах и указываем путь как папке, в которой будут храниться резервные копии;
- Отмечаем пункт «Проверять целостнойсть резервной копии«;
- Устанавливаем параметр «Сжимать резервные копии«.
Создание разностного бэкапа.
Создание плана на выполнение разностного бэкапа выполняется аналогично полному бэкапу.
Отметим некоторые отличия в настройке:
- Расписание выполнения заданий: с понедельника по субботу в 2:00;
- Тип резервной копии выбираем «Разностное«
Очистка устаревших бэкапов.
Для очистки устаревших бэкапов баз 1С Предприятия в MS SQL выбираем на панели элементов плана обслуживания Задачу «Очистка после обслуживания».
В моем случае разностный и полный бэкап хранятся в одной папке. Поэтому я добавляю только одно такое задание во вложенный план для разностного бэкапа. Если вы резервные копии будете хранить отдельно, то лучше создать отдельное задание в плане каждого бэкапа.
Перетаскиваем задачу с Панели элементов в план и задаем такие настройки:
- Удалить файлы следующего типа: Файлы резервных копий;
- Удалить из папки файлы с определенным расширением: указываем папку хранения бэкапов баз 1С;
- Включить вложенные папки первого уровня: отмечаем галочкой, потому-что у нас для бэкапов баз создаются отдельные папки
- Удалить файлы на основе возраста во время выполнения задачи: здесь все ограничивается лишь вашими потребностями и объемом жесткого диска, а мне достаточно 4 недель.
Чтобы в текущем плане после выполнения первого задания начало выполнятся следующее, их необходимо соединить между собой стрелками. Для этого выделяем первое задание и ведем стрелку от него к следующему.
Через стрелки можно задавать условие, при котором будет выполнять следующее задание: ошибка, успешное завершение, выполнение. Изменить условие можно щелкнув правой клавишей мыши по стрелке.
По умолчанию стрелка зеленого цвета. Это значит, что следующее задание будет выполняться только при успешном завершении первого. Это условие подходит для моего случая.
Переходим к очень важному и ответственному пункту: Перестроение индекса и обновление статистики.
Дефрагментация индекса (реорганизация или перестроение).
В процессе работы базы данных 1С Предприятия, в результате постоянной записи и удаления данных, образуются пустые (фрагментированные) области. По этой причине может увеличиваться бесполезный объем БД и замедляться скорость взаимодействия с ней.
Для устранения фрагментированных областей баз данных в MS SQL существует возможность проведения Реорганизации индекса и Перестроение индекса.
В чем разница между реорганизацией и перестроением?
Перестроение индекса означает, что фрагментация будет устранена путем удаления и пересоздания индексов.
При Реорганизации индекска происходит перестроение индексов в соответствии с логическим порядком. Этот способ наименее ресурсозатратный и является более предпочтительным для регулярного обслуживания баз данных.
В каких случаях требуется реорганизация индекса?
- Уровень фрагментации от 5% до 30%, то проводим реорганизацию.
- Фрагментация свыше 30% необходимо проводить перестроение индекса
Под выполнение этих задач очень подходит инструкция Transact-SQL со следующим содержимым:
Создаем вложенный план с названием «Дефрагментация индекса и обновление статистики» с расписанием раз в день в 4:00 и перетаскиваем в него из Панели элементов Задачу «Выполнение инструкции T-SQL«.
Вставляем в задачу приведенную выше инструкцию T-SQL.
Обновление статистики.
Обновление статистики в базах данных MS SQL, как и дефрагментация индекса, имеет большое значение для повышения производительности работы SQL сервера. Благодаря обновлению статистики SQL Server способен более эффективно выполнять планы запроса.
Выбираем на панели элементов Задача «Обновление статистики» и добавляем ее во вложенный план «Дефрагментация индекса и обновление статистики».
- Базы данных: все пользовательские базы данных;
- Обновить: вся собранная статистика;
- Тип просмотра: полный просмотр.
При помощи стрелки связываем условием выполнение задачи по обновлению индекса с задачей по дефрагментации. Таким образом в случае успешного выполнения дефрагментации будет проведено обновление статистики.
Не забываем сохранить созданный план обслуживания.
. и убедиться, что запущен Агент SQL Server.
Источник