nagios监控sqlserver复制同步

一主多从

从库为149 154 48 207

分别在主库上创建链接数据库

SQL149 SQL154 SQL48 SQL207

创建发布的时候,自定义一个监控表test_sqlcopy

创建存贮过程,同步正确返回 1,不同步返回0


/****** 对象:  StoredProcedure [dbo].[check_sync]    脚本日期: 06/11/2014 13:51:43 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE procedure [dbo].[check_sync]
as
begin
declare @result int
declare @num int
declare @num154 varchar(20)
declare @num149 varchar(20)
declare @num48 varchar(20)
declare @num207 varchar(20)
select @num=cast( floor(rand()*10) as int)
update test_sqlcopy set [name]=@num
WAITFOR DELAY '00:00:3'
select @num154=name from sql154.card.dbo.test_sqlcopy
select @num149=name from sql154.card.dbo.test_sqlcopy
select @num48=name from sql154.card.dbo.test_sqlcopy
select @num207=name from sql154.card.dbo.test_sqlcopy
if (@num154=@num and @num149=@num and @num48=@num and @num207=@num)
select @result=1
else 
select @result=0
return @result

end


nagios监控脚本

@sqlcmd  -S SVCTAG-3YGZ43X  -d card -W  -Q "declare @res int exec @res=check_sync select @res"|findstr "^[1-9]" >nul 2>nul
@if %ERRORLEVEL% == 1 (
@echo SYNC IS OK - SYNC is ok !
@exit 0) else (
@echo SYNC Critical - SYNC have a error!!!
@exit 2)
@pause


基本延迟为5秒

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值