- •Лабораторный практикум
- •«Администрирование и разработка серверных баз данных»
- •«Прикладная информатика в экономике» введение
- •1. Лабораторная работа по теме «Планирование установки sql Server»
- •Установка экземпляра sql Server по умолчанию
- •Проверка инсталляции
- •Запуск службы sql Server с помощью программы sql Server Service Manager (диспетчера служб sql Server).
- •Поключение к sql Server и выполнение запроса для проверки установленных баз данных
- •Построение запроса с помощью конструктора
- •2. Лабораторная работа по теме «Управление файлами базы данных»
- •1. Использование мастера для создания базы данных
- •2.Создание базы данных в Enterprise Manager
- •3. Создание базы данных SampleDbTsql с помощью команд Transact-sql в Query Analyzer
- •4. Изменение базы данных
- •5. Просмотр информации и изменение параметров баз данных Просмотр информации о базах данных в Query Analyzer
- •Изменение свойств базы данных в Enterprise Manager
- •Просмотр опций базы данных и их изменение с помощью языка Transact-sql
- •4. Лабораторная работа по теме «обеспечение безопасности в sql server»
- •1. Управление доступом к серверу
- •1.1.Проверка способа аутентификации
- •1.2.Создание пользователей и групп пользователей в Windows
- •Результаты выполнения задания
- •2. Управление разрешениями.
- •2.1.Создание ролей базы данных
- •2.2.Назначение разрешений на операторы
- •2.3.Назначение разрешений объектам
- •Результаты выполнения задания
- •3.Управление безопасностью на уровне приложений
- •3.1.Создание роли приложения
- •3.2.Назначение разрешений при помощи представлений и хранимых процедур
- •3.3.Проверка разрешений на представление и хранимые процедуры
- •5. Лабораторная работа по теме «Резервное копирование баз данных»
- •1.Создание устройств резервного копирования с помощью sql Server Enterprise Manager
- •2. Создание устройств резервного копирования с помощью команд языка Transact-sql
- •3.Резервное копирование баз данных
- •3.1.Резевное копирование с помощью Enterprise Manager
- •3.2. Добавление резервных копий в один и тот же файл с помощью языка Transact-sql
- •3.3. Просмотр содержания устройства резервного копирования
- •3.4. Перезапись существующего файла резервных копий с помощью языка Transact-sql
- •3.5. Резервное копирование одной базы данных в несколько файлов резервных копий
- •3.5. Резервное копирование базы данных с созданием временного устройства резервного копирования
- •4. Резервное копирование журнала транзакций
- •4.1. Резервное копирование журнала транзакций с помощью Enterprise Manager
- •4.2. Резервное копирование журнала транзакций в Query Analyzer
- •5.Создание дифференциальной резервной копии
- •Создание резервной копии базы данных nwcopy
- •Моделирование случайного изменения данных
- •Восстановление базы данных из полной резервной копии
- •Проверка восстановления базы данных
- •Моделирование изменений в базе данных и сбор сведений о них
- •Выполнение полного резервного копирования базы данных nwcopy
- •Изменение базы данных nwcopy и создание резервной копии журнала транзакций
- •Изменение базы данных и создание дифференциальной резервной копии
- •Изменение базы данных nwcopy и создание еще одной резервной копии журнала транзакций
- •Моделирование повреждения базы данных
- •Восстановление полной резервной копии базы данных, дифференциальной копии и копии журнала транзакций Проверка имеющихся резервных копий
- •Просмотр выбранной стратегии восстановления
- •Вопрос 1: Вы согласны с этим планом восстановления?
- •Вопрос 2: Почему не выбрана первая резервная копия журнала транзакций?
- •Восстановление полной и дифференциальной резервных копий
- •Проверка содержимого базы данных
- •Восстановление журнала транзакций из резервной копии
- •Просмотр содержимого базы данных
- •7. Лабораторная работа по теме «Мониторинг производительности сервера»
- •1. Использование программы Windows System Monitor
- •Проведите имитацию деятельности сервера
- •Отслеживание использования памяти и процессора.
- •Использование утилиты sql Profiler
- •Конфигурирование утилиты sql Profiler для обнаружения попыток несанкционированного подсоединения к серверу
- •Конфигурирование трассировки для регистрации долго выполняющихся запросов
- •Просмотр информации о блокировках
- •Удержание блокировки на сервере
- •Обнаружение блокирование блокировок
- •8. Лабораторная работа «Автоматизация административных задач» Цели:
- •Создание операторов
- •2. Создание задания с помощью мастера
- •3. Создание многошагового задания
- •Откройте программу Event Viewer (Просмотр событий) и просмотрите, как в нем отобразилась неудачная попытка выполнить задание. Отразите это в отчете.
- •4.Создание оповещений
- •4.1. Создание оповещения с помощью мастера Create Alert Wizard
- •4.2. Создание оповещения на основе пользовательского сообщения об ошибке
- •4.4.Создание оповещений об изменении рабочего режима
- •Тестирование оповещения о заполнении журнала транзакций
- •9. Лабораторная работа по теме «Обмен данными»
- •Импорт данных из запроса
- •2. Изменение пакета dts с помощью программы dts Designer
- •Перенос объектов sql Server в новую базу данных Импортирование объектов из одной базы данных в другую
- •Экспорт файлов в текстовый файл
- •Проверьте, что для пакета создано расписание
- •Импорт данных с помощью задания массовой вставки Bulk Insert
- •Перенос данных из таблицы Excel в таблицу базы данных Pubs
- •10. Лабораторная работа по теме «Репликация»
- •Регистрация второго сервера
- •Настройка репликации транзакций
- •Создание публикации (на сервере издателе и дистрибьюторе)
- •Создание подписки (на сервере-подписчике)
- •3. Создание публикации слиянием
- •Создайте публикацию для репликации слиянием на издателе
- •Просмотрите хронологию работы агента Snapshot
- •Создание подписки по запросу и разрешение конфликтов Создание Pull подписки
- •Обновление исходной таблицы на издателе
- •Одновременное обновление на издателе и подписчике
- •6. Проверка индексных структур
- •7. Проверка полезности индексов
- •8. Просмотр статистики индексов и оценка индексной селективности
- •12. Лабораторная работа по теме «Программирование»
- •Исправление ошибок в готовом скрипте
- •2.Создание циклических программ
- •3.Использование конструкции case
- •4.Использование динамически конструирования программ
- •6. Создать таблицу в базе данных Pubs со следующими полями: fio студента, oc1, oc2, oc3, означающие оценки за экзамены. Внести в нее 3-4 записи.
- •7. Преобразовать ранее созданную функцию, добавив в нее необходимые параметры.
- •9. Создайте программу для исправления номера телефона автора с определенным идентификационным номером (Pubs..Authors)
- •13. Лабораторная работа по теме «Триггеры»
- •1. Создание триггера на вставку новой записи
- •Тестирование созданного триггера
- •2. Создание триггера на обновление для обновления содержимого колонки
- •3. Создание триггера, который поддерживает сложные бизнес-правила
- •Управление безопасностью sql Server
- •Фиксированные серверные роли sql Server
- •Фиксированные роли базы данных
- •Блокировки в sql Server
- •Обмен данными
- •Список источников данных
- •Задачи dts Designer
3. Создание триггера, который поддерживает сложные бизнес-правила
Текст данного триггера приведен ниже.
USE Northwind
GO
CREATE TRIGGER Product_Delete
ON NewProducts FOR DELETE
AS
IF (Select Count (*)
FROM [Order Details] INNER JOIN deleted
ON [Order Details].ProductID = Deleted.ProductID
) > 0
BEGIN
RAISERROR(‘Транзакция не может быть выполнена, т.к. в таблице Order Details существуют заказы данного продукта’, 10, 1)
ROLLBACK TRANSACTION
END
go
/* тестирование триггера */
DELETE NewProducts WHERE ProductID = 6
Выполните сначала часть программы, которая создает триггер, а затем протестируйте его. Сохраните текст триггера в отчете.
Создайте системное сообщение об ошибке с указанием в нем кода продукта (ProductID). Откорректируйте приведенную выше программу, используя в команде возбуждения ошибки номер созданного Вами сообщения. Протестируйте триггер еще раз.
Тестирование порядка выполнения триггеров и ограничений
Создайте триггер с именем Product_Delete2 для таблицы Products, аналогичный тому, который Вы использовали в предыдущем упражнении. Можете подкорректировать текст предыдущей программы.
Протестируйте триггер с помощью команды DELETE (см. предыдущее упражнение) Проработал ли данный триггер для таблицы Products? Почему да или почему нет?
Приложения
Приложение 1
Управление файлами данных
|
Рис.1. Физическая архитектура базы данных
Рис.2. Пример размещения базы данных в разных группах файлов на разных дисках |
Команды создания и изменения базы данных kadry_new1
Use master
Create database kadry_new1
По умолчанию создаются два файла, которые будут иметь следующие имена и размещены по следующим адресам:
C:\Program Files\Microsoft SQL Server\MSSQL\data\kadry_new1.mdf
C:\Program Files\Microsoft SQL Server\MSSQL\data\kadry_new1_log.LDF
Exec sp_helpdb kadry_new1—просмотр сведений о базе данных
/* добавляем к базе данных файловую группу*/
ALTER DATABASE kadry_new1
ADD FILEGROUP kadryFG1
GO
/* добавляем в группу два файла*/
ALTER DATABASE kadry_new1
ADD FILE
( NAME =kadry_data2,
FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\ kadry_data2.ndf ',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB),
( NAME= kadry_data3 ,
FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\ kadry_data3.ndf’ ,
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB)
TO FILEGROUP kadryFG1
ALTER DATABASE kadry_new1
/*назначаем группу группой по умолчанию*/
MODIFY FILEGROUP kadryFG1 DEFAULT
Приложение 2
Управление безопасностью sql Server
Таблица 1
Фиксированные серверные роли sql Server
Роль |
Назначение
|
Права и разрешенные команды |
Database Creators (dbcreator)
|
Создание и модификация баз данных
|
Добавление членов роли dbcreator ALTER DATABASE CREATE DATABASE DROP DATABASE RESTORE DATABASE RESTORE LOG Увеличение пространства, занимаемого базой данных. Переименовние БД sp_renamedb
|
Disk Administrators (diskadmin)
|
Управление файлами
|
Добавление членов роли diskadmin DISK INIT Выполнение процедур .sp_addumpdevice sp_diskdefault sp_dropdevice
|
Process Administrators (processadmin)
|
Управление процессами
|
Добавление членов роли processadmin KILL
|
Security Administrators (securityadmin)
|
Управление защитой
|
Добавление членов роли securityadmin GRANT/DENY/REVOKE Предоставление прав на CREATE DATABASE Чтение журнала ошибок. Выполнение процедур: sp_addlinkedsrvlogin sp_addlogin sp_defaultdb sp_defaultlanguage sp_denylogin sp_droplinkedsrvlogin sp_droplogin sp_dropremotelogin sp_grantlogin sp_helplogins sp_password sp_remoteoption (обновление опций) sp_revokelogin |
Server Administrators (serveradmin)
|
Конфигурирование SQL Server
|
Добавление членов роли serveradmin DBCC FREEPROCCACHE RECONFIGURE SHUTDOWN sp_fulltext_service sp_configure sp_tableoption |
Setup Administrators (setupadmin)
|
Управление связанными серверами
|
Добавление членов роли setupadmin Добавление, удаление, настройка связанных серверов Назначение хранимых процедур, выполняемых при запуске SQL Server |
System Administrators (sysadmin)
|
Универсальное
|
Выполнение любых действий в SQL Server |
Таблица 2