Oracle rman创建和自动化备份
2011-10-15 14:19
274 查看
数据库版本:Oracle 10.2.0.5 x86_64
操作系统版本:Oracle Linux 5.7 x86_64
注:#表示为root用户下输入该命令, $表示为oracle用户下输入该命令。
1.创建rman catalog
# su - oracle
$ sqlplus / as sysdba
SQL>
create tablespace CATALOG
datafile '/u02/oradata/data/CATALOG_01.dbf'
size 20M
autoextend on
next 5M maxsize 2G
extent management local;
SQL>
create user rman identified by rman
default tablespace CATALOG
temporary tablespace TEMP_SPC
quota unlimited on CATALOG;
SQL> grant connect,recovery_catalog_owner to rman;
SQL> exit
$ rman target system/system123 catalog rman/rman
RMAN> create catalog;
RMAN> register database;
2.创建目录
$ mkdir -p /u01/oracle/backup/orcl 存放备份文件
$ mkdir -p /u01/oracle/backup/orcl/log 存放备份日志
$ mkdir -p /home/oracle/script 存放脚本
3.创建脚本
备份计划:每天凌晨一点进行数据库全备和归档日志备份。
$ cd /home/oracle/script
创建shell脚本db_backup_orcl.sh
创建rman脚本db_backup_orcl.rcv
(脚本内容在本文档最后面)
赋予两个脚本执行的权限:
$ chmod 775 db_backup_orcl.sh
$ chmod 775 db_backup_orcl.rcv
4.制定定时计划
每天凌晨1点运行备份脚本
# crontab -u oracle -e 添加以下内容:
脚本:
db_backup_orcl.sh
db_backup_orcl.rcv
本文出自 “DBAing” 博客,请务必保留此出处http://freewiller.blog.51cto.com/1743333/688484
操作系统版本:Oracle Linux 5.7 x86_64
注:#表示为root用户下输入该命令, $表示为oracle用户下输入该命令。
1.创建rman catalog
# su - oracle
$ sqlplus / as sysdba
SQL>
create tablespace CATALOG
datafile '/u02/oradata/data/CATALOG_01.dbf'
size 20M
autoextend on
next 5M maxsize 2G
extent management local;
SQL>
create user rman identified by rman
default tablespace CATALOG
temporary tablespace TEMP_SPC
quota unlimited on CATALOG;
SQL> grant connect,recovery_catalog_owner to rman;
SQL> exit
$ rman target system/system123 catalog rman/rman
RMAN> create catalog;
RMAN> register database;
2.创建目录
$ mkdir -p /u01/oracle/backup/orcl 存放备份文件
$ mkdir -p /u01/oracle/backup/orcl/log 存放备份日志
$ mkdir -p /home/oracle/script 存放脚本
3.创建脚本
备份计划:每天凌晨一点进行数据库全备和归档日志备份。
$ cd /home/oracle/script
创建shell脚本db_backup_orcl.sh
创建rman脚本db_backup_orcl.rcv
(脚本内容在本文档最后面)
赋予两个脚本执行的权限:
$ chmod 775 db_backup_orcl.sh
$ chmod 775 db_backup_orcl.rcv
4.制定定时计划
每天凌晨1点运行备份脚本
# crontab -u oracle -e 添加以下内容:
01 1 * * * /home/oracle/script/db_backup_orcl.sh >/dev/null 2>&1
脚本:
db_backup_orcl.sh
#!/bin/bash source /home/oracle/.bash_profile ORACLE_SID=orcl export ORACLE_SID #当天时间 DATA=`date +"%Y-%m-%d"` #检查备份存放目录是否存在,没有的话就创建 BK_PATH=/u01/oracle/backup/$ORACLE_SID if [ ! -d $BK_PATH ]; then mkdir -p $BK_PATH fi #检查备份日志存放目录是否存在,没有的话就创建 LOG_PATH=/u01/oracle/backup/$ORACLE_SID/log if [ ! -d $LOG_PATH ]; then mkdir -p $LOG_PATH fi #检查备份日志文件是否存在,没有的话就创建 LOG_FILE=$LOG_PATH/bk_$DATA.log if [ ! -f $LOG_FILE ]; then touch $LOG_PATH/bk_$DATA.log fi rman=/u01/oracle/10.2.0/bin/rman $rman cmdfile=/home/oracle/script/db_backup_orcl.rcv msglog=$LOG_FILE
db_backup_orcl.rcv
connect catalog rman/rman connect target sys/sys123 run { allocate channel d1 type disk; allocate channel d2 type disk; backup incremental level 0 tag 'db_level_0' filesperset 20 format '/u01/oracle/backup/orcl/df_%t_%s_%p' database; sql 'alter system archive log current'; backup archivelog all delete input filesperset 20 format '/u01/oracle/backup/orcl/al_%t_%s_%p'; release channel d2; release channel d1; } crosscheck backup; resync catalog;
本文出自 “DBAing” 博客,请务必保留此出处http://freewiller.blog.51cto.com/1743333/688484
相关文章推荐
- [转]Oracle DB 使用RMAN创建备份1
- Oracle DB 使用RMAN创建备份1
- [转]Oracle DB 使用RMAN创建备份2
- 使用Oracle可传输表空间的特性复制数据(6)RMAN备份也创建
- Oracle DB 使用RMAN创建备份2
- oracle直通车6关于rman备份恢复数据文件,以及创建分区表的实验
- oracle 10g rman 备份与恢复 之五
- Oracle学习之DATAGUARD(十) 在同台机器上使用11g rman新特性创建DG
- Oracle dataGuard专题:利用rman创建standby
- oracle备份之rman_恢复控制文件
- 深入oracle 12c数据库备份与恢复(优化RMAN性能、Oracle flashback技术)
- 【转】基于Linux下 Oracle 备份策略(RMAN)
- ORACLE RMAN备份的脚本配置[转载]
- oracle:rman恢复----通过增量备份来恢复
- Oracle RMAN备份恢复1-基础篇_超越OCP精通Oracle视频教程培训17
- oracle rman 数据库备份方案
- oracle rman备份失败与crosscheck
- rman创建备份
- Oracle如何实现创建数据库、备份数据库及数据导出导入的一条龙操作
- 【Oracle】RMAN备份