2 / ПиОБД / Методички (Rus) / Модуль 9 - Мониторинг SQL Server / m09ex04 - Использование уведомлений
.docУпражнение №4: Использование уведомлений.
Задача №1: создание целевой функции для уведомлений о событиях.
-
На панели инструментов, нажмите New Query
-
В панели запроса, введите:
USE AdventureWorks2008
GO
CREATE QUEUE NotifyService
ON QUEUE NotifyQueue
( [http://schemas.microsoft.com/SQL/Notifications/PostEventNotification] );
GO
CREATE ROUTE NotifyRoute
WITH SERVICE_NAME =’NotifyService’,
ADDRESS = ‘LOCAL’;
GO
-
На панели инструментов нажмите Execute
Задача №2: создание уведомлений для создания БД.
-
На панели инструментов, нажмите New Query
-
В панели запроса, введите:
CREATE EVENT NOTIFICATION CreateDatabaseNotification
ON SERVER
FOR CREATE_DATABASE
TO SERVICE ‘NotifyService’, ‘8140a771-3c4b-4479-8ac0-81008ab17984’
-
На панели инструментов нажмите Execute
Задача №3: проверить, что БД была создана через уведомление.
-
В Object Explorer, нажмите правой кнопкой на Databases и затем нажмите New Database
-
В окне New Database, в поле Database name введите NewDB и затем нажмите OK
-
На панели инструментов нажмите New Query
-
На панели запроса, введите:
SELECT * FROM sys.server_event_notifications WHERE name = ‘CreateDatabaseNotification’
-
На панели инструментов, нажмите Execute. На панели Results появится событие CreateDatabaseNotification
Задача №4: Create an event notification upon locking-related trace events
-
На панели инструментов, нажмите New Query
-
В панели запроса, введите:
CREATE EVENT NOTIFICATION CreateTraceLockNotification
ON SERVER
FOR TRC_LOCKS
TO SERVICE ‘NotifyService’, ‘8140a771-3c4b-4479-8ac0-81008ab17984’
-
На панели инструментов нажмите Execute
Задача №5: Verify that locking-related trace events cause an event notification.
-
Переключитесь на Проводник
-
Запустите файл RunQuery1.cmd
-
Запустите файл RunQuery2.cmd
-
Подождите, пока оба файла не выполнятся, и закроется окно SQLCMD. Закройте Проводник
-
В SQL Server Management Studio, нажмите New Query
-
На панели запроса, введите:
SELECT * FROM sys.server_event_notifications WHERE name = ‘CreateTraceLockNotification’
-
На панели инструментов, нажмите Execute. На панели Results появится событие CreateTraceLockNotification
-
Выключите 6231A-NY-SQL-01 и удалите все изменения