基本环境信息
target DB (需备份数据库)
192.168.199.67
ORACLE_SID=zgw
HOSTNAME=Oracle11 catlog DB (备份管理数据库)
192.168.199.68
ORACLE_SID=rman
HOSTNAME=Oracle11_2 创建rman账号及相关设置
sqlplus / as sysdba select file_name, tablespace_name from dba_data_files group by tablespace_name; create tablespace catalog_tb datafile
'/opt/oracle/oradata/rman/catalog_tb01.dbf' size 50M; create user rman identified by rman default tablespace catalog_tb;
grant recovery_catalog_owner to rman;
alter user rman quota unlimited on catalog_tb;
grant dba to rman;
grant connect,resource to rman; 配置catalog服务器tnsname.org文件
vi $ORACLE_HOME/network/admin/tnsnames.ora
RMAN =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = ))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = rman)
)
) ZGW =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.199.67)(PORT = ))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = zgw)
)
) 连接rman并创建catalog信息及注册数据库
rman catalog rman/rman target sys/oracle@zgw RMAN> create catalog; recovery catalog created
========================
SQL> show user
USER is "RMAN"
SQL> select count(*) from tab; COUNT(*)
---------- =========================
RMAN> register database; database registered in recovery catalog
starting full resync of recovery catalog
full resync complete 查看target数据库的信息
RMAN> list incarnation; List of Database Incarnations
DB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time
------- ------- -------- ---------------- --- ---------- ----------
ZGW PARENT -AUG-
ZGW CURRENT -MAY- RMAN> report schema; Report of database schema for database with db_unique_name ZGW List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
SYSTEM YES /opt/oracle/oradata/zgw/system01.dbf
SYSAUX NO /opt/oracle/oradata/zgw/sysaux01.dbf
UNDOTBS1 YES /opt/oracle/oradata/zgw/undotbs01.dbf
USERS NO /opt/oracle/oradata/zgw/users01.dbf List of Temporary Files
=======================
File Size(MB) Tablespace Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
TEMP /opt/oracle/oradata/zgw/temp01.dbf
备份脚本
[oracle@Oracle11_2 scripts]$ cat rman_backup.sh
#!/bin/bash
#this is rman catalog auto full backup script
#date --

#环境变量
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
ORACLE_SID=rman
ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/11g
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
BAK_HOME=/backup
export ORACLE_SID ORACLE_BASE ORACLE_HOME NLS_LANG PATH

#时间戳
backtime=`date +"20%y%m%d%H%M%S"`
#执行远程创建目录命令
ssh -l oracle Oracle11 "mkdir -p $BAK_HOME/$backtime" cd $ORACLE_HOME/bin
rman catalog rman/rman target sys/oracle@zgw log=$BAK_HOME/$backtime/backupall_$backtime.log <<EOF
run{
allocate channel c1 device type disk;
allocate channel c2 device type disk;
crosscheck backup;
sql 'alter system archive log current';
backup database format '$BAK_HOME/$backtime/%d_%T_%U';
backup current controlfile format '$BAK_HOME/$backtime/%d_cntrl_%s_%p_%s';
backup spfile format '$BAK_HOME/$backtime/%d_spfile_%U.bak';
backup archivelog all format '$BAK_HOME/$backtime/%d_arc_%t_%s' delete all input;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt obsolete;
delete noprompt backup of database completed before 'sysdate - 30';
release channel c1;
release channel c2;
}
EOF
echo "backup complete!"
此脚本功能:
.备份数据文件
.备份spfile
.备份控制文件
.备份archivelog
.清除已备份的archivelog文件
.清除30天以前的备份记录 注意:
.备份日志会写入rman本机的$BAK_HOME/$backtime/backupall_$backtime.log目录中。
.备份数据写入target数据库服务器的$BAK_HOME/$backtime 目录中。
.此脚本在rman服务器上执行。

参考:http://www.cnblogs.com/gaojian/p/3604814.html

http://blog.csdn.net/staricqxyz/article/details/8306447

通过Rman catalog 创建及管理Oracle数据库备份的更多相关文章

  1. oracle11g之管理oracle数据库笔记(理论基础知识)

                                                                  第三章 管理oracle数据库 1.启动数据库步骤;(创建启动实例--> ...

  2. Oracle数据库备份、灾备的23个常见问题

    为了最大限度保障数据的安全性,同时能在不可预计灾难的情况下保证数据的快速恢复,需要根据数据的类型和重要程度制定相应的备份和恢复方案.在这个过程中,DBA的职责就是要保证数据库(其它数据由其它岗位负责) ...

  3. Java实现Oracle数据库备份

    今天将很早就实现的一个Oracle数据库备份功能粘贴出来,这个功能是在大学做阶段设计时写的: import java.io.File; import java.io.IOException; /** ...

  4. Oracle数据库备份及还原

    Oracle数据库备份 1:找到Oracle安装路径我的就是默认C盘  C:\app\wdjqc\admin\orcl\adump 2:执行文件:back.bat 文件内容如下: @echo off ...

  5. Oracle数据库备份/导出(exp/expd)、导入(imp/impd)

    ​ 常用的oracle数据库备份(导入/导出)有两种,分别是exp/imp和expd/impd,前者是Orace早期版本带有的导入导出工具,后者是Oracle10g后出现的,下面进行分别介绍! 1.e ...

  6. Oracle数据库备份还原笔记

    Oracle数据库备份还原笔记 通过查阅资料知道Oracle备份还原的方式有三种.分别的是导出/导入.热备份和冷备份.导出/导入是一种逻辑备份.而热备份和冷备份是物理备份.[参考资料(https:// ...

  7. oracle数据库备份还原命令

    oracle数据库备份命令exp 用户名/密码@orcl file=d:\xxxxxx.dmp owner=用户名 oracle数据库还原命令sqlplus conn / as sysdba drop ...

  8. oracle数据库备份 -九五小庞

    oracle数据库备份

  9. RMAN Catalog创建、配置和管理

    环境:RHEL6.4 + Oracle 11.2.0.4 一.创建数据库catdb 1.1 官档的建库脚本示例 1.2 根据我实际环境修改如下项 1.3 创建必要目录并赋予权限 1.4 执行脚本建库 ...

随机推荐

  1. js插件---JS表格组件BootstrapTable行内编辑解决方案x-editable

    js插件---JS表格组件BootstrapTable行内编辑解决方案x-editable 一.总结 一句话总结:bootstrap能够做为最火的框架,绝对不仅仅只有我看到的位置,它应该还有很多位置可 ...

  2. Android加载大图不OOM

    首先,我们试着往sdcard里放一张400k的图片,但是分辨率是2560*1600 布局简单 <?xml version="1.0" encoding="utf-8 ...

  3. Android自定义组件系列【13】——Android自定义对话框如此简单

    在我们的日常项目中很多地方会用到对话框,但是Android系统为我们提供的对话框样子和我们精心设计的界面很不协调,在这种情况下我们想很自由的定义对话框,或者有的时候我们的对话框是一个图片,没有标题和按 ...

  4. Ubuntu 12.04使用演示

    今年年初,发布了Ubuntu 12.04(代号Precise Pangolin),但正式版预计将于2012年的4月底发布,作者对最新版本的ubuntu做了试用,先将操作视频与大家分享.更多内容请关注本 ...

  5. JavaScript--数据结构与算法之散列

    散列:实现散列表的数据后可以快速地实现插入或者删除.但是对于实现查找操作则效率非常的低.散列表的底层是数组实现的,长度是预先设定,可以随时根据需求增加.所有的元素根据和该元素对应的键,保存在特定的位置 ...

  6. 洛谷 P2372 yyy2015c01挑战算周长

    P2372 yyy2015c01挑战算周长 题目背景 yyy2015c01快速的解决了问题,受到邻居们的赞许,高兴的回到家,把糖给了妈妈,吃了香喷喷的午饭,又睡了一个甜甜的午觉,感觉人生真美好.下午爸 ...

  7. JXL.jar简单封装Excel读写操作

    1.分析 一个excel文件能够有多页,每页excel中能够有多行,每行中能够有多列.用面向对象的思想能够把一行中的某列看作是一个String对象,一行看作是一个包括多个列的对象.一页是包括多行的对面 ...

  8. onvif开发实战2--总结框架搭建

    完成框架搭建后,编写自己的主函数起onvif服务 编写makefile objs = onvif.o onvif_func.o duration.o soapC.o soapServer.o stds ...

  9. STM32介绍以及与通常ARM的区别

    ARM是英国的芯片设计公司,其最成功的莫过于32位嵌入式CPU核----ARM系列,最常用的是ARM7和ARM9,ARM公司主要提供IP核,就是CPU的内核结构,只包括最核心的部分,并不是完整的处理器 ...

  10. 使用SqlBulkCopy进行批量数据插入

    Dim dt As DataTable = New DataTable() dt.Columns.Add("DtCostProductRuleGUID", GetType(Guid ...