做运维工作要为自己减轻工作负担,所以对于重复性的工作最好写成脚本执行,如果周期比较频繁可以采用任务计划来完成,这样可以大大提高工作效率。
首先自动备份的脚本内容如下:文件名为cmsp.sh
- #!/bin/bash
- export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
- source /etc/profile.d/oracle.sh //执行环境变量文件
- cd $ORACLE_HOME/bin
- dmppath=/data/bak/ //dmp文件备份路径
- dmpname=cmsp`date +"%Y%m%d%H%M"`.dmp //dmp文件命名
- logname=cmsp`date +"%Y%m%d%H%M"`.log //日志文件命名
- exp citycms/temobicitycms file=$dmppath$dmpname log=$dmppath$logname direct=y //导入数据库
我的系统是Linux Suse Enterprise 10,下面介绍一下cron服务的脚本配置。
1.以root身份编辑cron.allow文件,手动添加oracle用户,允许使用cron服务。并启动cron服务 /etc/init.d/cron start
2.以oracle身份执行crontab -e
0 5 * * * /opt/oracle/useful_script/cmsp.sh (每天凌晨五点自动执行cmsp.sh脚本)
分 时 日 月 周
中间遇到问题如何调试:
可以将 0 5 * * * 设置为离你现在操作的时间不远的时刻,然后远程监控日志看看是否执行该任务计划
tail -f /var/log/messages 查看最后一条信息情况,根据提示一步一步排查。
转载于:https://blog.51cto.com/wukui127/803819