通过Rman catalog 创建及管理Oracle数据库备份
基本环境信息
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数据库备份的更多相关文章
- oracle11g之管理oracle数据库笔记(理论基础知识)
第三章 管理oracle数据库 1.启动数据库步骤;(创建启动实例--> ...
- Oracle数据库备份、灾备的23个常见问题
为了最大限度保障数据的安全性,同时能在不可预计灾难的情况下保证数据的快速恢复,需要根据数据的类型和重要程度制定相应的备份和恢复方案.在这个过程中,DBA的职责就是要保证数据库(其它数据由其它岗位负责) ...
- Java实现Oracle数据库备份
今天将很早就实现的一个Oracle数据库备份功能粘贴出来,这个功能是在大学做阶段设计时写的: import java.io.File; import java.io.IOException; /** ...
- Oracle数据库备份及还原
Oracle数据库备份 1:找到Oracle安装路径我的就是默认C盘 C:\app\wdjqc\admin\orcl\adump 2:执行文件:back.bat 文件内容如下: @echo off ...
- Oracle数据库备份/导出(exp/expd)、导入(imp/impd)
常用的oracle数据库备份(导入/导出)有两种,分别是exp/imp和expd/impd,前者是Orace早期版本带有的导入导出工具,后者是Oracle10g后出现的,下面进行分别介绍! 1.e ...
- Oracle数据库备份还原笔记
Oracle数据库备份还原笔记 通过查阅资料知道Oracle备份还原的方式有三种.分别的是导出/导入.热备份和冷备份.导出/导入是一种逻辑备份.而热备份和冷备份是物理备份.[参考资料(https:// ...
- oracle数据库备份还原命令
oracle数据库备份命令exp 用户名/密码@orcl file=d:\xxxxxx.dmp owner=用户名 oracle数据库还原命令sqlplus conn / as sysdba drop ...
- oracle数据库备份 -九五小庞
oracle数据库备份
- RMAN Catalog创建、配置和管理
环境:RHEL6.4 + Oracle 11.2.0.4 一.创建数据库catdb 1.1 官档的建库脚本示例 1.2 根据我实际环境修改如下项 1.3 创建必要目录并赋予权限 1.4 执行脚本建库 ...
随机推荐
- 【HDU】5249-KPI(线段树+离散化)
好久没写线段树都不知道怎么写了... 很easy的线段树二分问题 #include<cstdio> #include<set> #include<queue> #i ...
- 59.node的serve-favicon中间件的使用
转自:https://www.zhi-jie.net/node-serve-favicon-use/ 有一个名称为serve-favicon的中间件,可以用于请求网页的favicon图标.譬如如下的使 ...
- git --- ! [rejected] master -> master (non-fast-forward)
如何解决failed to push some refs to git Administrator@PC-20150110FGWU /K/cocos2d/yc (master) $ git push ...
- 转 C#:使用MD5对用户密码加密与解密
C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...
- javafx style and cssFile
public class EffectTest extends Application { public static void main(String[] args) { launch(args); ...
- java使double保留两位小数的多方法
java使double保留两位小数的多方法 java保留两位小数 mport java.text.DecimalFormat; DecimalFormat df = new DecimalFormat ...
- 【转】BAT取当前日期的前一天
============================取前一天的日期 OK============================@echo off ::前一天的日期,格式化输出echo ...
- git把本地文件上传到github上的步骤
1.清除clean 2.返回上一级cd .. 3.克隆仓库地址git clone+地址 4.添加忽悠文件vim .gitignore 5查看cat .gitignore 6.进入到test,并且添加所 ...
- Oracle中NVL、NVL2、DECODE函数的用法
DECODE函数的用法: DECODE(value,if1,then1,if2,then2,if3,then3,......,else),表示如果value的值等于if1时,DECODE函数的结果 ...
- 洛谷 P2867 [USACO06NOV]大广场Big Square
P2867 [USACO06NOV]大广场Big Square 题目描述 Farmer John's cows have entered into a competition with Farmer ...