- •1.2.2Типы представлений — до 5 мин.
- •1.2.3Создание представлений — до 25 мин.
- •1.2.4Использование представлений — до 10 мин.
- •1.2.5Изменение и удаление представлений — до 5 мин.
- •1.2.6Индексированные представления — до 5 мин.
- •2.2.2Создание хранимых процедур — до 15 мин.
- •2.2.3Использование параметров — до 15 мин.
- •2.2.4Использование локальных переменных внутри хранимой процедуры — до 15 мин.
- •2.2.6Использование select для возвращаемых значений — до 10 мин.
- •2.2.5Использование return для возвращаемых значений — до 10 мин.
- •2.2.7Управление хранимыми процедурами с помощью t-sql — до 10 мин.
- •3.2.2Когда использовать триггеры —до 10 мин.
- •3.2.3Создание триггеров — до 10 мин.
- •3.2.4Создание триггера типа delete — до 10 мин.
- •3.2.5Создание триггера типа insert — до 5 мин.
- •3.2.6Создание триггера типа update — до 10 мин.
- •3.2.7Создание триггера instead of — до 10 мин.
- •3.2.8Использование триггеров after — до 5 мин.
- •3.2.9Использование вложенных триггеров — до 10 мин.
- •3.2.10Управление триггерами с помощью операторов t-sql — до 5 мин.
- •4.2.2Уровни изолированности — до 10 мин.
- •4.2.3Поведение параллельных транзакций — до 10 мин.
- •4.2.4Режимы транзакций — до 20 мин.
- •4.2.5Вложенные транзакции — до 15 мин.
- •4.2.6Откаты транзакций — до 15 мин.
- •4.2.7Точки сохранения — до 10 мин.
- •5.2.2Уровни блокировок — до 15 мин.
- •5.2.3Режимы блокировки — до 20 мин.
- •5.2.4Блокирование и взаимоблокировки — до 20 мин.
- •5.2.5Подсказки блокировки — до 20 мин.
- •6.2.2Логическая оптимизация запросов — до 20 мин.
- •6.2.3Оптимизация плана исполнения запроса — до 15 мин.
- •6.2.4Подсказки оптимизатору запросов — до 15 мин.
- •6.2.5Оптимизация с использованием sql Server 2000 Index Tuning Wizard и sql Server 2005 Database Tuning Advisor — до 30 мин.
- •7.2.2Режимы аутентификации — до 15 мин.
- •7.2.3Учетные записи и пользователи — до 20 мин.
- •7.2.4Администрирование полномочий доступа к базам данных — до 20 мин.
- •7.2.5Администрирование ролей баз данных — до 10 мин.
- •7.2.6Делегирование учетной записи безопасности — до 15 мин.
- •8.2.2Внедрение sql кода (sql Injection) — до 20 мин.
- •8.2.3Защита sql Server в Интернет — до 20 мин.
- •8.2.4Пример организации системы безопасности приложений — до 40 мин.
- •9.2.2Журнальное протоколирование в sql Server — до 20 мин.
- •9.2.3Контрольные точки — до 15 мин.
- •9.2.4Методы резервного копирования — до 25 мин.
- •10.2.2Слежение за резервным копированием — до 10 мин.
- •10.2.3Планирование резервного копирования — до 25 мин.
9.2.3Контрольные точки — до 15 мин.
Создание контрольной точки – это операция, которая используется для синхронизации физических файлов данных с кэшем базы данных, чтобы уменьшить время воспроизведения в случае отказа системы. Время, необходимое для воспроизведения базы данных, определяется периодом времени, прошедшим с момента создания последней контрольной точки, и количеством черновых (ожидающих записи) страниц в буферном кэше. Таким образом, уменьшение интервала между контрольными точками снижает время воспроизведения, но за счет дополнительной нагрузки, налагаемой процессом создания контрольной точки.
Контрольные точки создаются в результате запуска оператора CHECKPOINT, при отключении SQL Server с помощью оператора SHUTDOWN или с помощью Service Control Manager, а также при автоматическом запуске операции контрольной точки из SQL Server.
В процессе создания контрольной точки выполняется ряд следующих операций.
Запись всех черновых страниц, которые еще ожидали записи перед запуском контрольной точки. Все страницы, которые содержат измененные данные и еще не записаны на диск, теперь записываются на диск.
Запись всех незавершенных транзакций в журнал транзакций. Тем самым SQL Server получает данные о транзакциях, которые находились в процессе выполнения на момент создания контрольной точки. В случае отказа системы процесс воспроизведения использует эти данные для воспроизведения этих транзакций.
Запись всех черновых страниц журнала на диск. Тем самым буфер журнала полностью сбрасывается диск.
Сохранение записей журнала контрольных точек в базе данных. Тем самым происходит сохранение записи о контрольной точке вне журнала транзакций, что необходимо из-за возможности резервного копирования и усечения журнала транзакций.
Интервал между контрольными точками определяется параметром конфигурирования SQL Server recovery interval. Этот параметр задается для всей системы SQL Server, а не для каждой базы данных, но контрольные точки создаются по отдельным базам данных. Этот параметр указывает, сколько минут потребует SQL Server для воспроизведения каждой базы данных в случае отказа системы. Значение 0 указывает, что интервал будет определять SQL Server (обычно он меньше 1 минуты). Для систем с большим объемом памяти, где выполняется очень много операций вставки и обновления, это принятое по умолчанию значение может приводить к созданию излишнего числа контрольных точек. В этом случае вы можете задать для этого параметра более высокое значение. Если ваши пользователи готовы ждать достаточно долго в случае отказа системы (например, 30 минут), производительность транзакций вашей системы будет выше. Значение этого параметра зависит от допустимости простоев в вашей компании и возможной частоты отказов системы.
Интервал между контрольными точками определяется также количеством записей в журнале транзакций. Он не зависит от системного времени или размера журнала. Чем больше записей в журнале транзакций, тем короче интервал между контрольными точками. Чем больше сделано изменений, тем больше записей будет помещено в журнал транзакций, поэтому SQL Server определит интервал между контрольными точками для более частой записи этих изменений на диск. При малом числе изменений, вносимых в базу данных, журнал транзакций будет содержать лишь несколько записей, и интервал между контрольными точками будет больше.
