ORACLE DATAGUARD 監控指令碼

來源:互聯網
上載者:User

標籤:oracle dataguard

使用perl來監控ORACLE DATAGUARD指令碼

#!/usr/bin/perluse strict;use warnings;use DBI;    # Load the DBI modulemy $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 drivermy $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;



本文出自 “與IT一起的日子” 部落格,請務必保留此出處http://raugher.blog.51cto.com/3472678/1551506

ORACLE DATAGUARD 監控指令碼

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.