Oracle运行脚本:exp,hist 和 err

上一篇我们讲到:首次使用rman备份数据库时,为了安全起见,我们应将整个数据库exp出来。
显而易见,每次都手敲exp代码是不可取的。

————费时费力还不规范!

  
  
为此,我们可以写一个exp脚本,之后的每次导出便只需敲写./exp_db_full.sh或者sh exp_db_full.sh,还能实现各参数的前后一致,如下:


export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
/u01/app/oracle/product/10.2/db_1/bin/exp 数据库名/用户名 file=/backup/ecology-$(date +%F).dmp log=/backup/ecology-$(date +%F).log full=y direct=y buffer=5120000 compress=n

  
  


  
同时,我们还可以写一个Oracle运行日志脚本chk_ora_alert.sh,将Oracle运行日志分门别类,提取其中的hist和err记录,使运维人员得以快速找到自己所需的运行信息。
因为Oracle本身的log实在是太太太太太太乱了,那都不是给人看的!


#!/bin/bash
cd $ORACLE_BASE/admin/$ORACLE_SID/bdump
if [ -f alert_$ORACLE_SID.log ]
then
    mv alert_$ORACLE_SID.log alert_$ORACLE_SID_temp.log
    touch alert_$ORACLE_SID.log
    cat alert_$ORACLE_SID_temp.log >> alert_$ORACLE_SID_$(date +%F).hist
    grep ORA- alert_$ORACLE_SID_temp.log > alert.err
fi

PS:
$ORACLE_BASE只是一个环境变量名,相当于/u01/app/oracle,可自行设置;$ORACLE_SID同理。
  
  


  

然而,

还有一个问题:前面的rmancrontab,再加上这expOracle,使得backup目录杂乱无章、凌乱不堪。

做运维,哪能没有强迫症!!

  
于是,我又将各个脚本的绝对路径修改了一下,将运行结果分配到各个目录,如下图:
1346146-20191105103805566-66448120.png

嗯......顺眼多了~~~ 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WoLykos

若对你有所帮助,请鼓励我一下~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值