广告
返回顶部
首页 > 资讯 > 数据库 >ORACLE DATAGUARD 监控脚本
  • 409
分享到

ORACLE DATAGUARD 监控脚本

2024-04-02 19:04:59 409人浏览 八月长安
摘要

使用perl来监控oracle DATAGUARD脚本#!/usr/bin/perl use strict; use warnings; use DBI; &nbs

使用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;



您可能感兴趣的文档:

--结束END--

本文标题: ORACLE DATAGUARD 监控脚本

本文链接: https://www.lsjlt.com/news/35848.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ORACLE DATAGUARD 监控脚本
    使用perl来监控ORACLE DATAGUARD脚本#!/usr/bin/perl use strict; use warnings; use DBI; &nbs...
    99+
    2022-10-18
  • oracle监控脚本语句
    查看碎片程度高的表SELECT segment_name table_name, COUNT(*) extents  FROM dba_segmentsWHERE owner NO...
    99+
    2022-10-18
  • 【DataGuard】Oracle DataGuard 日志传输状态监控
    Oracle 11g DataGuard 日志传输状态监控 ...
    99+
    2022-10-18
  • Zabbix通过Orabbix监控Oracle DataGuard
    Oracle通过DataGuard作为异地备份,可以通过监控主备的归档日志序列之差vim orabbix/conf/query.props在开头的QueryList添加QueryList=archive,a...
    99+
    2022-10-18
  • dataguard oracle 归档管理脚本
    管理部分如果没有启用database force logging,则备库对操作,nologging操作,会报坏块;建议表空间force logging或者database force logging;--f...
    99+
    2022-10-18
  • SHELL脚本监控oracle alert日志
    监控alert 日志思路:按alert日志行号取当前最后一行和上一次扫描的行对比 大于等于上一次扫描的行 就从上一次扫描的行开始 扫描到最后一行#!/bin/bash scriptHome=`dirname...
    99+
    2022-10-18
  • 监控oracle数据库 以及oracle监听 shell脚本
    文本格式:#!/bin/bash#Author:wangergui Email:291131893@qq.com Date:2016-10-10#Release 1.0#Function: check o...
    99+
    2022-10-18
  • mongodb监控脚本
    脚本涵盖两种监控mongo的方法:使用自带的mongostat工具查看,各个监控项的位置可能要按实际的mongostat输出进行调整;进入admin库,查看具体状态信息,可能需要验证。完整步骤: ...
    99+
    2022-10-18
  • redis监控脚本
    配合redis-cli工具,编写的shell脚本。按照规则,可以监控info页面写的所有数据信息redis-cli用法:# redis-cli -h 127.0.0.1&nbs...
    99+
    2022-10-18
  • 12c Broker 监控DataGuard
    SQL> set lines 200 SQL> select * from v$version where rownum=1; BANNER ...
    99+
    2022-10-18
  • Oracle慢SQL监控脚本代码分享
    本篇内容主要讲解“Oracle慢SQL监控脚本代码分享”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle慢SQL监控脚本代码分享”吧! 线上Oracl...
    99+
    2022-10-18
  • DATAGUARD搭建脚本.
    1.duplicate target databasefor standbyfrom active database nofilenamecheckDORECOVERspfileset service_na...
    99+
    2022-10-18
  • python 监控mysql脚本
    #!/usr/bin/env python #-*- coding: UTF-8 -*- from __future__ import print_function from mysql import connector import lo...
    99+
    2023-01-31
    脚本 python mysql
  • shell如何监控脚本
    这篇文章主要介绍了shell如何监控脚本,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1 准备监控机 linux 系统,普通服务器即可,要求: 安装ssh 客户端,如果要发送...
    99+
    2023-06-09
  • Linux监控脚本有哪些
    小编给大家分享一下Linux监控脚本有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!查看主机网卡流量代码如下:#!/bin/bash#network#Mike...
    99+
    2023-06-09
  • python脚本监控docker容器
    本文实例为大家分享了python脚本监控docker容器的方法,供大家参考,具体内容如下 脚本功能: 1、监控CPU使用率 2、监控内存使用状况 3、监控网络流量 具体代码: #!/usr/bin/en...
    99+
    2022-06-04
    容器 脚本 python
  • shell监控脚本实例—监控mysql主从复制
    本节内容:监控mysql主从复制的shell脚本。 说明:监控脚本在 rhel5 下测试正常,其它版本的linux 系统请自行测试,需要的一些准备工作可以查看这篇文章 代码: #监控mysql 主从复制c...
    99+
    2022-06-04
    主从 脚本 实例
  • 监控Oracle数据库的常用shell脚本怎么写
    本篇文章给大家分享的是有关监控Oracle数据库的常用shell脚本怎么写,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来...
    99+
    2022-10-19
  • CPU负载监控脚本代码
    #!/bin/bashload=`uptime`shijian=`date +%Y-%m-%d-%T`file=cpustatus.txttouch $fileall=`cat $file |wc -l`...
    99+
    2022-06-04
    负载 脚本 代码
  • Mysql主从状态监控脚本
    目标:对Mysql从库进行状态监控,如果从库复制异常就告警思路:1、首先查找Mysql从库的4个参数值(show slave status根据这个命令);分别是从库的IO线程、SQL线程、复制延迟时间(这个...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作