(Возврат на основную страницу)

 

Содержание номера за Январь 2014 год

SQL Server

Январь 2014 01 (43)

 

  1. Различные способы восстановления базы данных SQL Server
    Симон Лью (Simon Liew)

  2. Определение внешних и первичных ключей, индексов на таблице
    Мартин Коллацос (Martin Collazos)

  3. Сжатие всех объектов
    Якоб Биндслет (Jakob Bindslet)

  4. План сопровождения индексов
    Мариуш Жимчак (Mariusz Szymczak)
    Кто пользуется моими Базами (а их вообще кто-то использует)?
    Расмус Глибструп (Rasmus Glibstrup)


Различные способы восстановления базы данных SQL Server
Симон Лью (Simon Liew)


Задача
Можете ли вы описать принципы восстановления базы данных SQL Server из полной резервной копии, разностной резервной копии и из резервной копии журнала, а также то, как я должен был бы выполнять восстановление, чтобы получить состояние, соответствующее определенному моменту времени?
Решение
Эта рекомендация содержит описание принципов восстановления базы данных SQL Server, для которой используется модель ПОЛНОГО восстановления.


Определение внешних и первичных ключей, индексов на таблице
Мартин Коллацос (Martin Collazos)


Предлагаемая процедура позволяет вывести для выбранной таблицы следующую информацию (состав определяется параметрами вызова):

Я рекомендую создать такую процедуру во всех ваших базах данных.


Сжатие всех объектов
Якоб Биндслет (Jakob Bindslet)


Предлагаемый код формирует команды на сжатие всех объектов во всех базах данных на том экземпляре SQL Server, где исполняется код. По умолчанию используется сжатие на уровне страницы (PAGE). Если необходимо выполнить сжатие на уровне записи, укажите соответствующее значение параметра @comp = 'ROW'.
Созданные команды не исполняются, это остается на дело администратора.
Результатом исполнения кода является таблица с пятью столбцами:

При выполнении команда выдает информацию о том объекте, на котором она была выполнена.


План сопровождения индексов
Мариуш Жимчак (Mariusz Szymczak)


Самый лучший вариант сохранения низкого уровня фрагментации индексов - регулярный запуск задания, которое проведет необходимую работу. Приведенный ниже код можно использовать как задание, выполняемое по графику. Используйте параметр @PrintInformationOnly для вывода информации о состоянии индексов для всех таблиц. Если присвоить ему значение 0, тогда код выполнит фактическую дефрагментацию (REBUILD или REORGANIZE). Я также добавил переменную @ExcludeTableList, куда можно записать перечень таблиц, которые следует исключить из рассмотрения (например, они слишком большие или не используются).


Кто пользуется моими Базами (а их вообще кто-то использует)?
Расмус Глибструп (Rasmus Glibstrup)


Многие из наших заказчиков проводят работы по консолидации баз данных или переводят их на более современное оборудование, а старые серверы выводят из обращения.
Это немедленно требует ответа на вопрос: "Эти БД кому-то вообще нужны, если да, то кому?"

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


(Возврат на основную страницу)