OGG复制进程监控-外部表

 编写shell脚本

脚本1
-bash-3.00$ more ogg.sh 
PATH=/prod/oracle/product/10.2.0/db_1/bin:/usr/bin:/etc:/opt/EMCpower/bin/64:/etc/emc/bin:/prod/oracle/product/10.2.0/db_1/bin:/ogg/ggs;export PATH;
cd /ogg/ggs
ggsci <<eof
info all
info repprod_a
info repprod_b
info repprod_c
eof
 脚本2
 -bash-3.00$ more oggmonitor.sh 
MAIL=/usr/mail/${LOGNAME:?}
ORACLE_BASE=/prod/oracle;export ORACLE_BASE
ORACLE_HOME=/prod/oracle/product/10.2.0/db_1;export ORACLE_HOME 
ORACLE_SID=prodystem;export ORACLE_SID
#export ORACLE_HOSTNAME=prodoem
PATH=$ORACLE_HOME/bin:$PATH;export PATH
EDITOR=vi;export EDITOR
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/ogg/ggs;export LD_LIBRARY_PATH
PATH=$PATH:$ORACLE_HOME/bin:/usr/ccs/bin:$ORACLE_HOME/OPatch:/ogg/ggs;export PATH
/ogg/ogg.sh>/ogg/123.log
-bash-3.00$ 

创建crontab
-bash-3.00$ crontab -l
10 * * * * /export/home/prod/archdel.sh
0 5,16 * * * /prod/oracle/oraclecheck/checkdb.sh
10,11,12,13,14,20,22,25,30,32,35,38,39,40,41,43,44,45,50,55,56,57,58 * * * * /ogg/oggmonitor.sh 
-bash-3.00$ 


创建外部表进行喽数据

create table oggmonitor(
                    pro varchar2(100),
                    status varchar2(100),
                    repname varchar2(100),
                    time1 varchar2(121),
                    time2 varchar2(100)
                    )
            organization external
                    (
                    type oracle_loader
                    default directory oggdump
                    access parameters(
                                    records delimited by newline
                                    badfile 'emp_new%a_%p.bad'
                                    logfile 'emp_new%a_%p.log'
                                    fields terminated by ' '
                                    optionally enclosed by ' '
                                    lrtrim missing field values are null
                                    reject rows with all null fields
                                    )
                    location ('123.log')
)
parallel 
reject limit unlimited;


进行查询

select replace(pro, ' ', '') pro,
       replace(repname, ' ', '') repname,
       replace(status, ' ', ''),
       replace(time1, ' ', '') time1,
       replace(time2, ' ', '') time2
  from oggmonitor
 WHERE
pro in ('REPLICAT', 'MANAGER')
 AND STATUS IN ('STOPPED', 'RUNNING');
 
 grant select on oggmonitor to public;
 
select * From oggmonitor where pro='REPLICAT' AND STATUS IN('STOPPED','ABEND');

 

 

案例2 去重大文件内容

create table in_tb1
            (ename varchar2(4000))
            organization external
            (type oracle_loader default directory oggdump 
             
location('123.dat'));


select distinct substr(substr(ename,1,instr(ename,'LEN',1)-1),instr(ename,'SRC',1))||' '||substr(substr(ename,1,instr(ename,'SPT',1)-1),instr(ename,'PROTO',1))||' '|| substr(substr
(ename,1,instr(ename,'WINDOW',1)-1),instr(ename,'DPT',1)) from in_tb1;

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值