感谢支持
我们一直在努力

Python 发送 RMAN 备份 Log 脚本

RMAN 备份的日志放到一个文件里了。 之前的Nocatalg 下的备份脚本是使用Linux 的sendmail 来发送的。 不过这玩意影响系统的启动时间。 还是关了用Python来发送的。 备份完之后,调用一下脚本。 把RMAN的日志发送到邮箱。 早上来看下邮件,就知道备份是否成功了。 不然一台一台连服务器,有点小累。


Nocatalog 下的RMAN 增量备份 shell脚本


http://www.linuxidc.com/Linux/2011-02/32709.htm


这个nocatalog的RMAN 备份脚本会在备份脚本相同的目录下生成一个log文件。 下面的Python脚本就是把这个log 文件发送到邮箱。


Python 脚本比较简单,如下:


$ cat sendrmanlog.py


#!/usr/bin/python


#coding=gbk


#created by tianlesoftware


#2011/2/24


import os


import sys


import smtplib


FROM_USER=’www.linuxidc.com@www.linuxidc.com’


SMTP_SERVER=’192.168.1.100′


EMAIL_USER=’tianlesoftware’


EMAIL_PASSWD=’pwd’


TO_USERS=[‘www.linuxidc.com@www.linuxidc.com’, ‘www.linuxidc.com@www.linuxidc.com’]


def mysendmail(fromaddr,toaddrs,subject,body):


server=smtplib.SMTP(SMTP_SERVER)


server.login(EMAIL_USER,EMAIL_PASSWD)


for toaddr in toaddrs:


msg = ‘From: %s\nTo: %s\nSubject: %s\n\n%s\n’ % (fromaddr, toaddr, subject, body)


server.sendmail(fromaddr,toaddr,msg)


server.quit()


def load(fname=’/u01/backup/scripts/rman_backup.sh.out’):


fp=open(fname)


log=fp.read()


fp.close()


return log


body=load()


print body


subject=’192.168.88.209 RMAN Backup Log’


mysendmail(FROM_USER,TO_USERS,subject,body)


将脚本添加到crontab:


$ crontab -l


00 9 * * * /u01/backup/scripts/sendrmanlog.py >/u01/backup/scripts/sendrmanlog.log 2>&1

赞(0) 打赏
转载请注明出处:服务器评测 » Python 发送 RMAN 备份 Log 脚本
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏