相关疑难解决方法(0)

如何创建在镜像状态更改时运行作业/过程的事件通知

我按照这个问题的顺序问这个问题我可以使用 T-SQL 通过 TCP 发送一个字符串吗?

Remus Rusanu 揭示了它似乎是我问题的最佳解决方案,但是......我太不成熟了,无法理解和理解他所说的一切。

到目前为止,我认为我需要为 DATABASE_MIRRORING_STATE_CHANGE 创建通知事件,我说得对吗?

我如何创建此事件通知,以使其触发时在表中插入一行,该行存储来自通知的时间戳和 ID。

到目前为止,我正在为每个 ID 设置一个警报,每个警报都运行这样的作业(此示例适用于 ID = 1):

    DECLARE @state AS varchar(50);
    SELECT @state = mirroring_state_desc FROM SYS.database_mirroring WHERE mirroring_guid IS NOT NULL;
    IF (@state IS null) SET @state = ' ';
    INSERT INTO MirroringAlerts (DateTime, alertID, alertDesc, Sync, alertCreator) values (SYSDATETIME(), 1, 'Principal synchronized with W ', @state, @@SERVERNAME)
Run Code Online (Sandbox Code Playgroud)

基本上我在这个数据库中创建一个内部日志:

CREATE TABLE [dbo].[MirroringAlerts](
    [DateTime] [datetime] NOT NULL,
    [alertID] [smallint] NOT NULL,
    [alertDesc] [nchar](50) NOT NULL,
    [Sync] [nchar](12) …
Run Code Online (Sandbox Code Playgroud)

sql-server mirroring sql-server-2008-r2

12
推荐指数
2
解决办法
9913
查看次数

标签 统计

mirroring ×1

sql-server ×1

sql-server-2008-r2 ×1