亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

SQLSERVER監控復制并使用數據庫郵件功能發告警郵件

2024-07-21 02:50:26
字體:
來源:轉載
供稿:網友
SQLSERVER監控復制并使用數據庫郵件功能發告警郵件SQLSERVER監控復制并使用數據庫郵件功能發告警郵件

最近熬出病來了,都說IT行業傷不起,不說了,說回今天的正題

正題

上個月月底的時候因為要搬遷機房,需要將一個數據信息數據庫先搬到我們的機房,然后將客戶的數據庫

從原來的機房A搬到機房B,原來我們的數據信息庫(DataInfo)是放在機房A的,但是為了以后方便和防止信息泄露

就放到我們的托管機房,這里叫機房C

在搬遷機房的時候,盡量減少宕機時間,數據不能丟,搬遷機房真是一門學問。。。

雖然這麼忙,但我還是把寫文章的時間騰出來,把干貨分享給大家o(∩_∩)o

因為很多系統都在讀寫機房A的數據信息庫(DataInfo),我在上個月底的時候用備份文件初始化的方式搭建好復制把機房A的

機房A的數據信息庫(DataInfo)新插入的數據實時復制到機房C,先讓一部分系統能讀取機房C的數據信息庫(DataInfo),

等以后搬遷完所有系統之后再統一全部改連接地址

當然這篇文章不是講我這次的搬遷過程,在搭建好復制之后,由于我沒有設置訂閱庫的登錄用戶的權限為只讀,導致前幾天開發那邊

同時把新數據插入到訂閱庫,導致復制失敗(主鍵重復),分發命令積壓(大概26w+條命令未分發),然后一大堆后續工作。。。。。。

復制的坑其實挺多的,因為我們不可能24小時用肉眼盯著復制監視器,所以我們需要一些監控手段,

當遇到復制出錯的時候可以盡快知道然后進行修復

監控考慮的條件:

(1)單個點監控、多個點監控

(2)購買、自己開發

(3)比較實時、不是很實時

(4)數據庫服務器是否負載過高

我這里只考慮最簡單的一種:單個點的,不需要很實時,負載不高,如果服務器負載過高有可能連郵件也發不出了

然后就考慮到使用SQLSERVER自帶的數據庫郵件來發告警郵件

當然,如果需要同時滿足實時、多個點監控、成本足夠可以考慮購買成熟的解決方案

例如:微軟的System Center 2012 R2

又或者

自己公司開發監控程序,支持短信告警更加及時


需求

(1)當遇到復制出錯的時候發郵件到我的郵箱

(2)每天間隔一定時間發郵件告訴我當前復制的情況

測試環境:Windows7 64位 、發布庫SQL2005 SP4 、訂閱庫SQL2012 SP1、發布庫和訂閱庫都在我的筆記本上

復制所用登錄用戶:[ReplicationUser]

在進行實驗之前,需要測試一下smtp.163.com,端口為25,這個地址是否可以訪問。如果不通有可能是你機器防火墻的問題

還有可能需要檢查殺毒軟件有沒有屏蔽了端口,否則會發送郵件失敗

呈上完整腳本

--測試復制郵件告警USE [sss]GO--建立測試表  發布表一定要有主鍵CREATE TABLE Repl_Test    (      ID INT IDENTITY(1, 1)             NOT NULL             PRIMARY KEY ,      TestNAME VARCHAR(100) NULL ,      CreatDate DATETIME NULL    )/*********************************************************************/--在發布庫和訂閱庫建立一個同名的登錄用戶,這兩個登錄用戶都對發布庫有訪問權限/*********************************************************************/--設置指定數據庫的復制選項--存儲過程說明http://msdn.microsoft.com/zh-tw/library/ms188769.aspxuse [sss]exec sp_replicationdboption @dbname = N'sss', @optname = N'publish', @value = N'true'GO/*********************************************************************/-- 添加事務發布--存儲過程說明http://www.yesky.com/imagesnew/software/tsql/ts_sp_repl_4s32.htmuse [sss]exec sp_addpublication @publication = N'testpub-sss', @description = N'來自發布服務器“JOE”的數據庫“sss”的事務發布。', @sync_method = N'concurrent', @retention = 0, --訂閱是否過期,0為永不過期@allow_push = N'true', --推送訂閱@allow_pull = N'true',  --請求訂閱為@allow_anonymous = N'false',   --false則表示不允許在該發布上使用匿名訂閱@repl_freq = N'continuous',   --是復制頻率的類型。默認設置為 continuous。如果是 continuous,則表示發布服務器提供所有基于日志的事務輸出。如果是 Snapshot,則表示發布服務器只生成已調度同步事件@status = N'active',   --指定發布數據是否可用@independent_agent = N'true',  --指定是否有用于發布的單獨的分發代理程序@immediate_sync = N'false',   --指定是否每次快照代理程序運行時都創建發布的同步文件@replicate_ddl = 1, --復制DDL語句@allow_initialize_from_backup = N'true' --是否允許備份初始化GO/*********************************************************************/--添加快照代理--存儲過程說明http://www.yesky.com/imagesnew/software/tsql/ts_sp_repl_7ecj.htmexec sp_addpublication_snapshot @publication = N'testpub-sss', @frequency_type = 1, @frequency_interval = 0, @frequency_relative_interval = 0, @frequency_recurrence_factor = 0, @frequency_subday = 0, @frequency_subday_interval = 0, @active_start_time_of_day = 0, @active_end_time_of_day = 235959, @active_start_date = 0, @active_end_date = 0, @job_login = null, @job_passWord = null, @publisher_security_mode = 1/*********************************************************************/-- 添加發布項目--存儲過程說明http://www.yesky.com/imagesnew/software/tsql/ts_sp_repl_27s5.htmuse [sss]exec sp_addarticle @publication = N'testpub-sss', @article = N'Repl_Test', @source_owner = N'dbo', @source_object = N'Repl_Test', --要發布的表@type = N'logbased', @pre_creation_cmd = N'drop', --當應用該項目的快照時,指定系統在訂閱服務器上檢測到同名的現有對象時所應采取的操作@schema_option = 0x000000000803509F, @identityrangemanagementoption = N'manual', --自增列范圍管理選項,manual為手動管理@destination_table = N'Repl_Test',  --是目的(訂閱)表@destination_owner = N'dbo',   @ins_cmd = N'CALL sp_MSins_dboRepl_Test', --是復制項目的插入時使用的復制命令類型@del_cmd = N'CALL sp_MSdel_dboRepl_Test', --是復制項目的刪除時使用的復制命令類型@upd_cmd = N'SCALL sp_MSupd_dboRepl_Test' --是復制項目的更新時使用的復制命令類型GO/*********************************************************************/--完整備份發布庫BACKUP DATABASE [sss] TO DISK ='C:/SSS_FULLBACKUP2014-4-13.BAK' /*********************************************************************/--在訂閱庫上還原數據庫USE [master]RESTORE DATABASE [sss] FROM  DISK = N'D:/sss_fullbackup2014-4-6.bak' WITH  FILE = 1,  MOVE N'sss' TO N'D:/Program Files/Microsoft SQL Server/MSSQL11.SQL2012/MSSQL/DATA/sss.mdf',  MOVE N'sss_log' TO N'D:/Program Files/Microsoft SQL Server/MSSQL11.SQL2012/MSSQL/DATA/sss_log.ldf', NOUNLOAD,  REPLACE,  STATS = 5GO/*********************************************************************/--在發布庫新建訂閱 使用推送訂閱use [sss]exec sp_addsubscription @publication = N'testpub-sss', @subscriber = N'JOE/SQL2012', @destination_db = N'sss', @subscription_type = N'Push', @sync_type = N'initialize with backup',@article = N'all', @update_mode = N'read only', @subscriber_type = 0,@backupdevicetype='disk',@backupdevicename='C:/SSS_FULLBACKUP2014-4-13.bak'--最后一次備份的備份文件(發布服務器上的存放位置)/*********************************************************************/--添加分發代理exec sp_addpushsubscription_agent @publication = N'testpub-sss', @subscriber = N'JOE/SQL2012', @subscriber_db = N'sss', @job_login = null, @job_password = null, @subscriber_security_mode = 0, @subscriber_login = N'ReplicationUser', @subscriber_password = N'ReplicationForUser', @frequency_type = 64, @frequency_interval = 0, @frequency_relative_interval = 0, @frequency_recurrence_factor = 0, @frequency_subday = 0,@frequency_subday_interval = 0,@active_start_time_of_day = 0, @active_end_time_of_day = 235959, @active_start_date = 20140408, @active_end_date = 99991231, @enabled_for_syncmgr = N'False', @dts_package_location = N'Distributor'GO/*********************************************************************/--腳本創建數據庫郵件--開啟數據庫郵件EXEC sp_configure 'show advanced options',1RECONFIGURE WITH OVERRIDEGOEXEC sp_configure 'database mail xps',1RECONFIGURE WITH OVERRIDE/*********************************************************************/--創建郵件帳戶信息EXEC  msdb..sysmail_add_account_sp      @ACCOUNT_NAME ='ReplicationErrorMailLog',--郵件帳戶名稱      @EMAIL_ADDRESS ='hiAT163.com',--發件人郵件地址      @DISPLAY_NAME ='系統管理員',--發件人姓名      @REPLYTO_ADDRESS =NULL,      @DESCRIPTION = NULL,      @MAILSERVER_NAME = 'SMTP.163.COM',--郵件服務器地址      @MAILSERVER_TYPE = 'SMTP',--郵件協議      @PORT =25,--郵件服務器端口      @USERNAME = 'hiAT163.com',--用戶名      @PASSWORD = 'xxx',--密碼      @USE_DEFAULT_CREDENTIALS =0,      @ENABLE_SSL =0,      @ACCOUNT_ID = NULLGO/*********************************************************************/--數據庫配置文件IF EXISTS(SELECT name FROM msdb..sysmail_profile WHERE name=N'ReplicationErrorProfileLog')BEGIN    EXEC msdb..sysmail_delete_profile_sp    @profile_name='ReplicationErrorProfileLog'ENDEXEC msdb..sysmail_add_profile_sp    @profile_name = 'ReplicationErrorProfileLog',--profile名稱    @description = '數據庫郵件配置文件',--profile描述    @profile_id = nullGO/*********************************************************************/--用戶和郵件配置文件相關聯EXEC msdb..sysmail_add_profileaccount_sp    @profile_name = 'ReplicationErrorProfileLog',--profile名稱    @account_name = 'ReplicationErrorMailLog',--account名稱    @sequence_number = 1--account 在profile 中順序GO/*********************************************************************/--發送簡單文本的郵件/*********************************************************************/--創建鏈接服務器--要開啟分發服務器上的Distributed Transaction Coordinator(MSDTC服務)USE [master]GOEXEC master.dbo.sp_addlinkedserver @server = N'JOE_DI
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
最近2019年中文视频免费在线观看| 亚洲国产精彩中文乱码av在线播放| 亚洲国产精品999| 久久久久久久久电影| 亚洲美女精品久久| 国产精品jvid在线观看蜜臀| 丝袜美腿精品国产二区| 国产福利精品在线| 一个人看的www欧美| 欧美最顶级丰满的aⅴ艳星| 亚洲最大av网站| 青草成人免费视频| 国产美女久久精品| 国产精品久久久久久中文字| 在线视频欧美性高潮| 精品调教chinesegay| 午夜美女久久久久爽久久| 欧美黑人性猛交| 欧美在线性爱视频| 91久久在线播放| 亚洲福利视频专区| 欧美三级xxx| 亚洲国产精品成人精品| 亚洲欧洲中文天堂| 亚洲国产精品久久久久秋霞不卡| 国产一区二区在线播放| 久久躁狠狠躁夜夜爽| 欧美精品videofree1080p| 欧美成人亚洲成人日韩成人| 国产精品自拍偷拍视频| 亚洲精品99999| 日韩av在线天堂网| 国产精品自拍偷拍| 九九九久久久久久| 亚洲精品动漫100p| 日韩在线观看免费av| 91香蕉嫩草神马影院在线观看| 日韩成人高清在线| 日韩人在线观看| www亚洲欧美| 欧美日韩国产一区二区三区| 欧美成人h版在线观看| 国产福利精品av综合导导航| 欧美精品在线免费| 国产一区二区日韩| 国产综合福利在线| 亚洲国产精品va在线| 国产亚洲精品综合一区91| 精品国产一区二区三区久久| www.亚洲一区| 91大神福利视频在线| 国产精品日韩电影| 青草成人免费视频| 久久久久久久久久婷婷| 国产ts人妖一区二区三区| 欧美日韩中文字幕日韩欧美| 成人午夜在线观看| 久久精品中文字幕电影| 91精品久久久久久久久| 国产精品一久久香蕉国产线看观看| 久久免费高清视频| 国产一区二区三区在线播放免费观看| 91成人国产在线观看| 国产一区二区三区中文| 最近免费中文字幕视频2019| 国内外成人免费激情在线视频网站| 国产精品自拍视频| 欧美夫妻性生活视频| 日韩欧美视频一区二区三区| 国产亚洲精品久久久久久牛牛| 中文字幕在线国产精品| 欧美日本国产在线| 成人一区二区电影| 国产在线视频不卡| 亚洲www视频| 国产亚洲免费的视频看| 久久精品久久久久| 欧美三级欧美成人高清www| 精品亚洲一区二区三区在线播放| 欧美性xxxx极品hd欧美风情| 美女久久久久久久| 在线日韩精品视频| 亚洲a成v人在线观看| 欧美亚洲国产视频| 亚洲欧美制服中文字幕| 97免费视频在线播放| 国产精品久久久久久一区二区| 69av视频在线播放| 欧美激情精品久久久久久变态| 久久99亚洲精品| 亚洲视频日韩精品| 日韩在线视频免费观看| 免费不卡在线观看av| 欧美日韩亚洲一区二| 亚洲精品不卡在线| 欧美激情精品久久久久久大尺度| 国外成人在线直播| 这里只有精品久久| 日韩电影视频免费| 热久久美女精品天天吊色| 国产亚洲精品综合一区91| 欧美精品久久久久久久久| 欧美激情网站在线观看| 亚洲国产三级网| 国产精品一二三在线| 日韩欧美精品网址| 日本国产精品视频| 欧美性猛交xxxx| 91夜夜揉人人捏人人添红杏| 亚洲嫩模很污视频| 日本国产精品视频| 欧美日韩国产中文精品字幕自在自线| 中文字幕亚洲色图| 亚洲免费精彩视频| 欧美另类老女人| 亚洲欧美日韩精品久久亚洲区| 国产欧美精品在线| 日韩精品丝袜在线| 欧美在线视频免费| 亚洲精品720p| 亚洲欧美激情四射在线日| 欧美日韩中文字幕在线| 亚洲国产91精品在线观看| 亚洲成人精品视频在线观看| 2019中文在线观看| 欧美xxxx综合视频| 国产精品久久久久7777婷婷| 久久亚洲影音av资源网| 色综合老司机第九色激情| 久久久免费高清电视剧观看| 成人淫片在线看| 中文字幕久久久av一区| 亚洲码在线观看| …久久精品99久久香蕉国产| 欧美大胆a视频| 欧美一级黑人aaaaaaa做受| 揄拍成人国产精品视频| 国产精品久久久久久久电影| 国产一区香蕉久久| 97久久精品人人澡人人爽缅北| 亚洲人成人99网站| 国产精品欧美风情| 欧美丝袜一区二区三区| 日韩在线播放一区| 2021国产精品视频| 亚洲新中文字幕| 日韩欧美国产中文字幕| 成人网在线免费观看| 成人精品aaaa网站| 精品国产拍在线观看| 国产亚洲xxx| 国产精品久久久久久久久免费| 亚洲一区二区三区久久| 夜夜嗨av一区二区三区四区| 国产精品激情av在线播放| 国产日韩亚洲欧美| 91av网站在线播放| 日本午夜精品理论片a级appf发布| 97在线观看免费高清| 久久亚洲国产精品成人av秋霞| 丰满岳妇乱一区二区三区| 国产91免费看片| 精品无人区太爽高潮在线播放| 国产视频观看一区|