Linux系统下Oracle数据库自动备份脚本经验分享
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
1、新建Oracle数据库备份目录
mkdir -p /backup/oracledata
2、新建Oracle数据库备份脚本
vi /backup/oracledata/ordatabak.sh
3、脚本内容:
#!/bin/sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:$HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
orowner=DB
days=10
bakdata=$orowner"_"$(date +%Y%m%d).dmp
baklog=$orowner"_"$(date +%Y%m%d).log
ordatabak=$orowner"_"$(date +%Y%m%d).tar.gz
bakdir=/backup/oracledata
cd $bakdir
#exp 用户名/密码@orcl grants=y file=$bakdir/$bakdata log=$bakdir/$baklog
tar -zcvf $ordatabak $bakdata $baklog
#find $bakdir -type f -name "*.log" -exec rm {} \;
#find $bakdir -type f -name "*.dmp" -exec rm {} \;
su - oracle
crontab -e
30 2 * * * oracle /backup/oracledata/ordatabak.sh
service crond restart
mkdir -p /backup/oracledata
2、新建Oracle数据库备份脚本
vi /backup/oracledata/ordatabak.sh
3、脚本内容:
#!/bin/sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:$HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
orowner=DB
days=10
bakdata=$orowner"_"$(date +%Y%m%d).dmp
baklog=$orowner"_"$(date +%Y%m%d).log
ordatabak=$orowner"_"$(date +%Y%m%d).tar.gz
bakdir=/backup/oracledata
cd $bakdir
#exp 用户名/密码@orcl grants=y file=$bakdir/$bakdata log=$bakdir/$baklog
tar -zcvf $ordatabak $bakdata $baklog
#find $bakdir -type f -name "*.log" -exec rm {} \;
#find $bakdir -type f -name "*.dmp" -exec rm {} \;
#find $bakdir -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \;
注:1、用户名/密码 写自己用的即可;
2、另外删除10天前的备份tar.gz文件和所有的log、dmp文件被我注释掉了根据需要可以用;
chmod +x /backup/oracledata/ordatabak.sh
su - oracle
crontab -e
30 2 * * * oracle /backup/oracledata/ordatabak.sh
#每天凌晨2点30分,以oracle用户执行ordatabak.sh备份文件
service crond restart
7、完事
步骤要点:
1、编辑脚本文件时,不能再Windows下编辑后复制上去,这样文件格式不对;
2、用户的执行权限要检查是否有;
2、设置定时任务时,Oracle的环境变量不能错,否则不能执行;
3、添加定时任务时,如果是在用户下添加定时任务时,不需要加用户名比如:
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:1 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献1条内容
所有评论(0)