您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
使用perl来监控ORACLE DATAGUARD脚本
#!/usr/bin/perl use strict; use warnings; use DBI; # Load the DBI module my $ZabbixServer = "192.168.3.24"; my $ZabbixPort = "10051"; my $HOSTNAME = "ora2"; my $SenderCMD="/usr/local/zabbix/bin/zabbix_sender"; my $Primtns = "test_st"; my $Stantns = "test"; my $KEY = "Oracled.DG.Status"; my $KEYContent1 = "OK"; my $KEYContent2 = "Failed"; my $LogVal = 3; my $user = "zabbix"; my $passwd = "zabbix"; my $Primseq = 0; my $Stanseq = 0; $ENV{"ORACLE_HOME"}='/oracle/product/11.2.0/db_1'; #$ENV{PATH} .= $ENV{PATH} . ':/oracle/product/11.2.0/db_1/bin'; ### Perform the connection using the Oracle driver my $dbh = DBI->connect( "dbi:Oracle:$Primtns", "$user", "$passwd", { PrintError => 0 } ) or die "Can't connect to Oracle database: $DBI::errstr\n"; my $sth = $dbh->prepare( "SELECT MAX(SEQUENCE#) MAXSEQ FROM V\$ARCHIVED_LOG WHERE RESETLOGS_ID=( SELECT RESETLOGS_ID FROM V\$DATABASE_INCARNATION WHERE STATUS='CURRENT') " ); $sth->execute; ### while ( my @recs = $sth->fetchrow_array ) { $Primseq = $recs[0]; ### } ### Now, disconnect from the database $dbh->disconnect or warn "Disconnection failed: $DBI::errstr\n"; $dbh = DBI->connect( "dbi:Oracle:$Stantns", "$user", "$passwd", { PrintError => 0 } ) or die "Can't connect to Oracle database: $DBI::errstr\n"; $sth = $dbh->prepare( "SELECT MAX(SEQUENCE#) MAXSEQ FROM V\$ARCHIVED_LOG WHERE RESETLOGS_ID=( SELECT RESETLOGS_ID FROM V\$DATABASE_INCARNATION WHERE STATUS='CURRENT' AND APPLIED='YES') " ); $sth->execute; ### while ( my @recs = $sth->fetchrow_array ) { $Stanseq = $recs[0]; ### } ### Now, disconnect from the database $dbh->disconnect or warn "Disconnection failed: $DBI::errstr\n"; if($Primseq-$Stanseq>=$LogVal){ system("$SenderCMD -z $ZabbixServer -p $ZabbixPort -s $HOSTNAME -k $KEY -o $KEYContent2 >/dev/null 2>&1"); }else{ system("$SenderCMD -z $ZabbixServer -p $ZabbixPort -s $HOSTNAME -k $KEY -o $KEYContent1 >/dev/null 2>&1"); } exit;
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。