Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Покритикуйте плз план обслуживания.  [new]
abrashka
Member

Откуда:
Сообщений: 521
День добрый!
Стоит задача построить план обслуживания для порядка 15-20 баз размером порядка 10-50 гигабайт каждая.
В интернете практически не нашел рекомендации, только общие понятия...(тыкните плз на полезную инфу, если есть)
Так вот, речь идет о достаточно активных базах(продажа билетов).
SQL Server 2008 R2 (SP1) Standard Edition. Никаких репликаций и т.п.
Базы похожие по структуре, но не одинаковые.
Все базы Full Recovery Mode, read committed isolation level.
Резервное копирование производится сторонним софтом, бэкап логов каждые 15 минут.
Каждые 2 минуты для каждой базы бежит джоб(ssis пакет), который копирует изменения в базе на другой сервер(жалкое подобие dwh).
Так вот, нужно написать план обслуживания сервера.
Планируется запуск процесса раз в неделю(две?). Хотелось бы, чтоб план бежал как можно меньше времени, ибо версия Стандард не позволяет производить ребилд индексов онлайн.
Вот примерно что я думаю сделать:
Построить джоб, который будет запускать step для каждой базы, если один из степов по какой либо причине упадет, то переходим с следующему степу. Каждый степ будет запускать следующее(для конкретной базы):
1) Отмена бэкапов логов
2) Отмена джоба, который запускает SSIS пакет(ибо возможны взаимоблокировки с ребилдом индексов).
3) Ребилд индексов
4) Обновление статистики
5) Возврат бэкапов(нужно произвести даже если ребилд упал)
6) Возврат SSIS(нужно произвести даже если ребилд упал)
Ну и дальше переходим к следующему степу, который выполняет аналогичный план для следующей базы.
В пункте 3(ребилд индексов) думаю для начала оставить полный ребилд, если по времени будет терпимо, то так и оставлю, если нет, то можно делать ребилд только таблицам с большой фрагментацией и реорганизовать индексы в оставшихся таблицах.
Как осуществить? Написать процедуру, которая получала бы имя базы данных и выполняла бы все перечисленное именно в этой базе, сохранить ее в мастере. Либо создать аналогичную процедуру в каждой из баз.

Правильно ли я наметил план или нужно что-то пересмотреть/добавить/убрать?

Спасибо!
11 июн 14, 16:41    [16155994]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
Glory
Member

Откуда:
Сообщений: 104751
abrashka
1) Отмена бэкапов логов

каким образом ?
11 июн 14, 16:59    [16156124]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
Maxx
Member [скрыт]

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

вообще, в 2005 помоему уже доступны ф-ции и вью на основании которых можно понять НАДО ли индекс ребилдить вообще. Ребилд индекса -вообще не панацея,а применяеться когда действительно необходимо по факту.
11 июн 14, 17:02    [16156145]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
Spartakich
Member

Откуда: Riga
Сообщений: 380
abrashka

...нужно что-то пересмотреть/добавить/убрать?...




DBCC CHECKDB
11 июн 14, 17:07    [16156172]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
abrashka
Member

Откуда:
Сообщений: 521
Glory,
Еще не думал как, не совсем курсе как выполняются бэкапы. В крайнем случае прийдется либо не выполнять бэкапы во время выполнения всего джоба, запускать буду в выходной ночью, благо активность никакая, либо все-таки не отменять вообще.
Например если я знаю, что запускаю план каждое восресенье в 2 часа ночи и он бежит порядка двух часов, то в плане бэкапа нужно будет настроить выполнения каждые 15 минут кроме воскресенья с 2 до 4 (если можно)

Maxx,
Спасибо, поищу эти функции, тоже думаю, что нет смысла перестраивать индексы во всех таблицах
11 июн 14, 17:14    [16156213]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
NickAlex66
Member

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

Бэкапы обслуживанию не помеха.
11 июн 14, 22:07    [16157130]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
SERG1257
Member

Откуда:
Сообщений: 2879
abrashka
Спасибо, поищу эти функции, тоже думаю, что нет смысла перестраивать индексы во всех таблицах

http://msdn.microsoft.com/en-us/library/ms188917(v=sql.105).aspx
Пример D в аккурат ваш скрипт.
11 июн 14, 22:28    [16157188]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
abrashka
1) Отмена бэкапов логов
И нафига?

Следующий пост будет: У меня разросся лог. Почему и как его обрезать?


abrashka
Спасибо, поищу эти функции, тоже думаю, что нет смысла перестраивать индексы во всех таблицах
Возьмите готовое решение.
SQL Server Index and Statistics Maintenance
Там среди прочего есть еще и параметр TimeLimit. Можно ограничить количество времени отводимого на ребилд индексов, чтобы не вылезти за время отводимое под регламентные операции.
12 июн 14, 01:42    [16157771]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
abrashka
Member

Откуда:
Сообщений: 521
Всем большое спасибо!
на самом ли деле бэкапы логов не мешают ребилдам?
12 июн 14, 12:02    [16158342]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
abrashka,

Мешают как? Блокируют? Нет, не блокируют.
12 июн 14, 12:33    [16158430]     Ответить | Цитировать Сообщить модератору
 Re: Покритикуйте плз план обслуживания.  [new]
NickAlex66
Member

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

Для бэкапов ребилды такие же транзакции, как и все остальные.
12 июн 14, 13:01    [16158523]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить