在Linux下定时备份ORACLE
要在Linux下定时备份Oracle数据库,可以使用cron
来设置定时任务,并使用expdp
或exp
命令执行数据泵导出或传统的导出。以下是一个简单的例子:
- 编写备份脚本,例如
backup_oracle.sh
:
#!/bin/bash
# 设置Oracle环境变量
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
export ORACLE_SID=your_db_sid
# 备份路径和文件名
BACKUP_DIR=/backups/oracle
DUMPFILE=full_backup_$(date +%Y%m%d%H%M).dmp
# 执行数据泵导出
$ORACLE_HOME/bin/expdp system/password@$ORACLE_SID full=y directory=$BACKUP_DIR dumpfile=$DUMPFILE
# 压缩备份文件
tar -czf $DUMPFILE.tar.gz $DUMPFILE
# 删除原始的数据泵导出文件
rm $DUMPFILE
- 给脚本执行权限:
chmod +x backup_oracle.sh
- 添加定时任务,使用
crontab -e
并添加一行如下:
0 2 * * * /path/to/backup_oracle.sh
这个例子设置了每天凌晨2点执行备份。请根据实际情况调整时间。记得替换your_db_sid
为你的Oracle实例名,并确保$ORACLE_HOME
和$BACKUP_DIR
路径正确。
评论已关闭