- 论坛徽章:
- 0
|
自己捣鼓了好几天的AIX下oracle的备份,刚刚实验通过,呵呵,与大家共享。
不过我做的只是逻辑备份,而且备份脚本也写的很笨(有高手提示说可以只写一个脚本的,呵呵,而我写了7个)
总结如下,供大家参考
目前我们在AIX上执行的是ORACLE的逻辑备份,就是把数据文件用exp命令导出为一个备份文件;
1. 建立自动备份的脚本文件:
备份计划为:每周为一个循环,每周的每一天的夜里12:00执行备份,备份文件为7个,分别是周一到周日的数据文件,只保留最近一周的文件;
脚本文件如下:
文件名:backup1.sh (周一所执行的文件)
ORACLE_HOME=/home/oracle/OraHome1;
export ORACLE_HOME;
ORACLE_SID=hrdbs;
export ORACLE_SID;
rm -f /HRBACKUP/hrdbs_backup1.dmp;
/home/oracle/OraHome1/bin/exp hr/hrcc file=/HRBACKUP/hrdbs_backup1.dmp;
其他文件,backup2.sh ,backup3.sh 等等,和这个文件大致一样,只是具体的备份文件名不同;
脚本建立完成之后,放在oracle的安装目录下/home/oracle/OraHome1
然后改变这些文件的执行权限:
chmod +x backup1.sh
2. 给用户oracle分配crontab的权限;
使用超级用户(root)的身份登录,在/usr/var/adm/cron下通过vi命令查看cron.deny文
件,如果数据库的拥有者oracle被列在里面,将其删除即可;
然后建立cron.allow文件,文件中只用填写oracle即可;
3. 建立自动调度的脚本文件;
用oracle用户登录,通过使用命令crontab -e oracle开始建立oracle用户的Crontab文件;
该文件全文如下:
00 00 * * 0 /home/oracle/OraHome1/backup7.sh
00 00 * * 1 /home/oracle/OraHome1/backup1.sh
00 00 * * 2 /home/oracle/OraHome1/backup2.sh
00 00 * * 3 /home/oracle/OraHome1/backup3.sh
00 00 * * 4 /home/oracle/OraHome1/backup4.sh
00 00 * * 5 /home/oracle/OraHome1/backup5.sh
00 00 * * 6 /home/oracle/OraHome1/backup6.sh |
|