定时备份ORACLE数据库:[2]linux环境下

2025-11-05 17:37:58

1、首先,编写用于备份ORACLE数据库的SHELL脚本:

#!/bin/sh

export ORACLE_HOME=/app/oracle/product/12.1.0/dbhome_1

export PATH=$ORACLE_HOME/bin:$PATH

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

var=`date +%Y%m%d_%H%M%S`

echo "========begin backup oracle db========"

exp username/password@prodb file=/home/oracle/prodb_bak/files/name_$var.dmp log=/home/oracle/prodb_bak/logs/name_$var.log owner=user1,user2,user3

定时备份ORACLE数据库:[2]linux环境下

2、在LINUX上创建好文件与目录,如图:

定时备份ORACLE数据库:[2]linux环境下

3、3.1 在linux系统终端中,输入命令“crontab -e”。

3.2 在vi操作界面,输入:

     00 01 * * * /home/oracle/prodb_bak/db_bak.sh

定时备份ORACLE数据库:[2]linux环境下

4、使用“crontab -l”命令,可以查看定时任务的设置情况。

使用“tail /var/spool/mail/xxxx”命令,可以查看定时任务执行的日志。

定时备份ORACLE数据库:[2]linux环境下

5、如果日志中提示:

/bin/sh^M: bad interpreter: No such file or directory

分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。

解决:(UltraEdit):File-->Conversions-->DOS->UNIX即可。

这个问题可是让我郁闷了好久哦~~~

定时备份ORACLE数据库:[2]linux环境下

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢