1.创建备份目录
mkdir /home/oracle/backup
2.授权对应权限
chmod +x backup.sh
chown oracle.oinstall /home/oracle/backup
3.oracle字符集查询
SQL> select userenv('language') from dual;
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK
4.backup.sh脚本内容
#!/bin/bash
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export DAYS=`date -d "15 days ago" +'%Y%m%d'`
export BAKUPTIME=`date +'%Y%m%d%H%M'`
echo "Starting bakup..."
exp scott/tiger@orcl file=/home/oracle/backup/$BAKUPTIME.dmp log=/home/oracle/backup/$BAKUPTIME.log
echo "Starting zip..."
cd /home/oracle/backup/
zip -m $BAKUPTIME.zip $BAKUPTIME.dmp $BAKUPTIME.log
echo "Delete the file bakup before 15 days..."
rm -rf /home/oracle/backup/$DAYS*.dmp
echo "Delete the file bakup successfully. "
echo "Bakup completed."
5.定时任务
--切换oracle用户
su - oracle
--编辑定时任务文件
crontab -e
--每天的凌晨2点,中午12点,晚上18点执行backup.sh
0 2,12,18 * * * /home/oracle/backup/backup.sh
--重启crond服务
service crond restart
--查看每天会收到mail
cat /var/spool/mail/oracle
6.如有必要可以对脚本进行加密
第一种:
--下载shc文件(官网下载地址: http://www.datsi.fi.upm.es/~frosal/sources/)
--解压文件
tax xf shc-3.8.3.tgz
cd shc-3.8.3
--执行安装
make test && make strings && make install
--执行加密
shc -r -f backup.sh
第二种:
gzexe backup.sh
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29812844/viewspace-1988771/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29812844/viewspace-1988771/