- •Н.И. Коваленко
- •Коваленко н.И., Банчук г.Г.
- •Коваленко Надежда Ивановна
- •Тема I. Общие сведения о ms sql Server 2000
- •1. Базы данных типа клиент/сервер
- •Система типа клиент/сервер
- •2. История sql Server
- •Основные количественные показатели системы sql – сервер
- •3. Обзор sql Server 2000
- •4. Стандартные объекты sqlServer
- •ТемаIi. Работа с ms sqlServer2000 и его компонентами
- •1. Запуск, приостановка и завершение работы sqlServer
- •2. SqlServerEnterpriseManager
- •3. Программа sqlServerQueryAnalyzer
- •Панель инструментов утилиты Query Analyzer
- •4. Обслуживание баз данных
- •Файлы операционной системы, используемые sql Server 2000:
- •Структура базы данных
- •5. УстановкаMicrosoftSqlServer2000
- •Ограничения инсталляции sql-сервера
- •ТемаIii. Работа с базой данных создание и использование индексов и ключей
- •1. Базы данных и их свойства
- •Описание ролей, используемых для доступа к базе данных и серверу баз данных
- •Дополнительные опции настройки базы данных
- •Настройка параметров доступа к базе данных
- •2. Таблицы базы данных.
- •3. Типы данных, используемые в sql-сервере
- •Текстовые типы данных
- •Типы данных даты и времени
- •Типы данных для хранения больших объемов информации
- •Типы данных специального назначения:
- •4. Основные операции с базами данных
- •5. Восстановление бд (администрированиеSqlServer2000)
- •6. Создание и использование индексов и ключей в системе sql Server.
- •7. Использование ограничений
- •8. Использование диаграмм для разработки структуры базы данных
- •9. Создание представлений (видов)
- •ТемаIv. Правила и создание значения
- •1. Инструменты контроля целостности данных
- •2. Создание правил и стандартных значений
- •ТемаV. Триггеры в системеSql–сервер
- •1. Понятие триггера. Типы триггеров
- •2. Создание триггеров
- •3. Использование триггеров. Виды триггеров
- •ТемаVi. Оптимизация запросов и основы sql
- •1. Оптимизация запросов
- •2. Основные операторы sql в sql Server 2000
- •3. Объединение таблиц в операторе select
- •From titles
- •4. Использование директив group by иHaving
- •5. Оператор insert
- •6. ОператорUpdate
- •7. ОператорDelete
- •8. ОператорCreatetable
- •ТемаVii. Создание и работа с представлениями
- •1. Основные сведения о представлениях
- •2. Создание представлений. Отображение представлений
- •3. Редактирование представлений. Отображение зависимостей представлений. Создание представлений и представлений
- •4. Переименование столбцов представлений. Переименование представлений. Удаление представлений
- •5. Изменение данных посредством представлений. Обновление данных с помощьюSqlServerEnterpriseManager
- •ТемаViii. Создание и использование курсоров
- •1. Понятие курсора
- •2. Выборка данных из курсора
- •3. Операторы и глобальные переменные для работы с курсорами
- •4. Примеры использования курсоров
- •ТемаIx. Использование хранимых процедур
- •1. Достоинства и недостатки хранимых процедур
- •2.Создание хранимой процедуры
- •3. Операторы языка управления программой. Оператор declare
- •4. Операторы goto, begin…end и if…else
- •5. Операторы waitfor, return, while, break и continue
- •6. Операторы print и raiserror
- •7. Использование параметров в хранимых процедурах
- •8. Глобальные переменные. Отладка хранимых процедур
- •Тема X. Транзакции и блокировки
- •1. Определение транзакции. Ограничения для транзакций. Уровни изоляции транзакций
- •2. Базовая информация о блокировках. Типы блокировок
- •3. Создание транзакций и работа с ними. Точки сохранения
- •4.Отображение информации о блокировках. Явное задание блокировки
- •Описание параметров для явного задания блокировок
- •ТемаXi. Система безопасностиSqlServer2000
- •1. Типы безопасности. Создание и управление бюджетами пользователей
- •Стандартные роли сервера
- •Стандартные роли базы данных
- •2. Добавление новых пользователей. Удаление идентификаторов и пользователей
- •3. Создание ролей. Удаление ролей
- •4. Права доступа. Управление правами доступа
- •ТемаXii. Использование распределенных объектов управления.
- •1.Sql-dmo. Назначение, возможности
- •2. Экспорт данных с помощью команды вср
- •3. Использование объектовSql-dmOв хранимых процедурах
- •ТемаXiii. Основные сведения о хранилищах данных
- •1. Хранилища данных. Системы поддержки принятия решений (dss). Интерактивная аналитическая обработка (olap)
- •Сравнение субд и хранилища данных
- •2. Компоненты хранилища данных. Хранилища данных и магазины данных
- •3. Преобразование данных. Метаданные
- •4. Разработка плана хранилища данных
- •Microsoft Repository
- •С помощью мастера dts можно выполнять также простые преобразования данных, сложные преобразования выполняются с помощью dts Designer.
- •ТемаXiv. Использование служб преобразования данных
- •1. Службы преобразования данных (dts).DtSи хранилища данных
- •2. СредствоDtsDataPump
- •3. МастераDts
- •4. ИспользованиеDtsDesigner
- •Тема XV. Службы olap Microsoft sql Server
- •1.OlaPи многомерные данные
- •2. Хранение данных в бдolap
- •3. Оптимизация базы данныхOlap
- •4. Доступ к многомерным данным
5. Восстановление бд (администрированиеSqlServer2000)
Функционирование SQL Server требует определённых затрат времени на управление ядром БД. Тщательно выполняя все операции администрирования можно оптимизировать время ответа пользователям и предотвратить многие проблемы.
Контрольные точки (checkpoints) – это функции, которые SQL Server выполняет с целью записи изменений или параметров конфигурации в БД в определённый, подходящий для этого момент времени. Когда контрольная точка выполняется либо вручную, либо в результате естественного процесса, основываемого на событиях сервера, все "грязные" страницы (dirty pages) (т.е. страницы, содержащие обновлённые данные, которые ещё не сохранены на диске), сохраняются на диске. Без принудительного выполнения контрольные точки обычно инициализируются каждые 60 секунд. SQL Server откатывает или завершает транзакции относительно последней контрольной точки, поэтому загрузка SQL Server после сбоя требует более длительного времени – он восстанавливает БД до состояния, соответствующего моменту успешного выполнения последней контрольной точки.
Средство проверки целостности данных.DBCC(Database Consistency Checker) – применяется для генерирования подробной информации об объектах БД. Эта утилита обычно работает при двух условиях:
1) следует обеспечить по возможности наименьшую активность, влияющую на SQL Server (могут появляться сообщения об ошибках у пользователей при работе DBCC);
2) часто бывает, необходим монопольный доступ к БД, для чего используют процедуру перевода БД в однопользовательский режим, при этом другие пользователи лишаются возможности работы в системе, пока не закончится проверка.
После включения однопользовательского режима можно выполнить проверку, работает ли БД в наилучшем режиме. После чего выполнить возврат в многопользовательский режим.
Для проверки логической и физической целостности БД, использования памяти, уменьшения размера БД, проверки статистик DBСC имеется много различных инструкций. Bcе инструкции делятся на категории:
сопровождения,
состояния,
проверки правильности,
смешанные.
Инструкция проверка правильности CHECKALLOC вызывает остановку системного процесса, если DBCC находит ошибку. При использовании аналогичной инструкции NEWALLOC системный процесс не останавливается, а продолжает работу и генерирует отчёт обо всех ошибках, найденных в структуре БД.
При выполнении инструкции проверки правильности CHECKDB DBCC проверяет каждую таблицу и ассоциированые страницы данных, индексы и указатели, что позволяет убедиться в правильности отношений между связанными объектами.
Часто запрашиваемый при создании БД объем дискового пространства больше, чем необходимо. Для уменьшения БД используют инструкцию SHRINKDАTABASE, которая работает со страницами.
При работе с SQL Server огромное значение имеет резервирование данных. Резервирование БД – это как бы ее снимок в определенный момент времени, а журнал транзакций содержит все изменения с тех пор, как сделан этот снимок. БД необходимо резервировать каждую неделю, а журнал транзакций – ежедневно. Для этого обычно используют ленту, причем ленты с копиями следует нумеровать. Опытные администраторы используют двухнедельный цикл резервирования, т.к. проблема в БД может быть распознана не сразу.
Резервирование БД и журналов транзакций делается путем записи дампа системы на дамп устройства (dump device), которое SQL Server распознает как хранилище информации.
Управление резервной копией информации можно осуществлять через Enterprise Manager. При этом для начала работы системы резервирования:
1) выбрать БД для сохранения.
2) Tools/Backup Database ( или Tasks/ Backup Database);
3) в диалоговом окне Backup на вкладке General выбрать БД для сохранения, дать имя копии, выбрать тип резервной копии:
Database - Complete – полная копия;
Database Differenfial – сохраняет те части БД, которые изменялись со времени создания полной копии и незафиксированные транзакции (осуществляется быстрее);
Transaction Log – сохраняются изменения в БД;
File and Filegroup – если БД большая, то в копию можно включить лишь некоторые файлы БД.
4) Для указания места расположения файла копии в группе Destination нажать кнопку Add, далее выбрать:
cохранение копии в файле – тогда указать полный путь и имя;
cохранить копии на устройстве, например на ленте.
5) Выбрать один из вариантов:
Append to media – добавлять в устройство;
Overwrite existing media – переписать устройство.
После создания устройства необходимо выполнить само резервирование. Возможны два варианта:
1) резервирование по необходимости, требует ручного вмешательства при каждом выполнение резервирования.
2) резервирование по расписанию - запись БД в дамп автоматически.
При выборе стратегии резервирования следует учитывать:
обязательное копирование журналов транзакций в промежутках между резервированиями БД;
резервировать каждую БД, которую нужно защитить;
обязательно резервировать главную БД, т.к. она включает всю информацию о других объектах БД в системе.
Типы резервирования: автоматическое (включен флажок Schedule), единовременное (снят флажок). После создания всех установок нажать OK.
Лучшим является регулярное автоматическое резервирование, выполняемое по расписанию. Для создания расписания необходимо включить флажок Schedule, нажать кнопку . В диалоговом окнеEdit Schedule задать имя и тип расписания:
автоматический запуск при запуске службы Agent;
запускать каждый раз, когда процессоры находятся в состоянии простоя;
один раз в заданное время (One Time);
периодически по расписанию (Recurring) –задать периодичность и время запуска программы резервирования.
Далее вернуться в окно Backup и нажать OK.
Рассмотрим восстановление информации из резервных копий.
При сбое системы SQL сервер автоматически восстанавливает целостность БД.
Для восстановления БД, при необходимости, имея резервные копии, необходимо выполнить следующие действия:
восстановить главную БД;
восстановить последнюю полную копию БД, если она имеется;
восстановить журналы транзакций, зарезервированные с момента получения последней резервной копии БД.
В результате будет получена полностью восстановленная система, соответствующая последней резервной копии журнала транзакций.
Процесс восстановления БД заключается в следующем:
1) Убедиться, что все необходимые файлы имеются: в Enterprise Manager открыть папку Backup Devices, просмотреть свойства Properties необходимого устройства, кнопка View Сontents позволит получить сведения о содержимом устройства резервирования.
2) Запретить использование БД всем, кроме владельца sp_dboption <имя БД> 'dbo use only', 'True'.
3) Из контекстного меню для нужной БД выбрать команду Task/Restore Backup. Выбрать один из вариантов восстановления:
произвести восстановление БД и журнала транзакций в соответствии с выбранными критериями, например, указать, что информация резервной копии ценна только до определенного момента времени;
восстановление только выбранных файлов или файловых групп;
производить восстановление только из определенных устройств (указать устройство).
После указания источника и типа восстанавливаемой копии можно задать на вкладке Options одну из опций:
выгружать ленту после каждого восстановления;
выдавать дополнительное предупреждение перед началом восстановления каждой копии;
осуществить восстановление поверх существующей БД;
восстановить БД под другими именами.
Далее нажать ОК для начала процесса восстановления.