请教大神rmanrmanasm异地恢复复错误

--==========================
-- RMAN catalog 的创建和使用
--==========================
一、创建恢复目录
创建恢复目录一般分为三大步骤
创建存放恢复目录的数据库(或使用已存在的数据库)
创建恢复目录的的所有者
创建恢复目录
创建数据库可以参考:
在存储恢复目录的数据库创建表空间用于存储恢复目录schema及恢复目录数据(本文使用已经创建好的数据库catadb来存储恢复目录)
SQL& create tablespace tbs_rman datafile '/u01/app/oracle/oradata/catadb/tbs_rman01.dbf'--创建rman恢复目录表空间
size 200m autoextend on;
SQL& create user rman identified by rman
--创建rman schema
temporary tablespace temp
default tablespace tbs_rman
quota unlimited on tbs_rman;
SQL& grant recovery_catalog_owner to rman;
--角色授予
SQL& conn rman/rman
SQL& select * from session_privs;
----------------------------------------
CREATE SESSION
ALTER SESSION
CREATE TABLE
CREATE CLUSTER
CREATE SYNONYM
CREATE VIEW
CREATE SEQUENCE
CREATE DATABASE LINK
CREATE PROCEDURE
CREATE TRIGGER
CREATE TYPE
SQL& select * from session_roles;
------------------------------
RECOVERY_CATALOG_OWNER
RMAN& connect catalog rman/rman@catadb
--连接到恢复目录
connected to recovery catalog database
RMAN& create catalog tablespace tbs_rman;
--创建恢复目录
recovery catalog created
[oracle@oradb ~]$ rman target sys/redhat@orcl catalog rman/rman@catadb
--连接到目标数据库及恢复目录
connected to target database: ORCL (DBID=)
connected to recovery catalog database
RMAN& register database;
--将目标数据库注册到恢复目录
database registered in recovery catalog
starting full resync of recovery catalog
full resync complete
二、基于恢复目录的备份
1.查看相关信息
RMAN& list incarnation;
List of Database Incarnations
Inc Key DB Name
Reset Time
------- ------- -------- ---------------- --- ---------- ----------
CURRENT 446075
----------------------------------------------------------------------------------------------------
RMAN& crosscheck copy;
--校验copy
RMAN& delete expired copy;
--删除过期的copy
RMAN& run{
2& allocate channel ch1 device type disk;
backup as compressed backupset
4& database plus archivelog delete input
5& format='/u01/app/oracle/bk/rmbk/Whole_%d_%U'
tag='Whole_bak';
7& release channel ch1;}
3.增量备份(0级)
RMAN& run{
2& allocate channel ch1 device type disk;
3& allocate channel ch2 device type disk;
4& backup as compressed backupset
5& incremental level 0
6& database plus archivelog delete input
7& format='/u01/app/oracle/bk/rmbk/Inc_0_%d_%U'
8& tag='Inc_0';
9& release channel ch1;
10& release channel ch2;}
RMAN& list backup summary;
4.增量备份(1级)
RMAN& run{
2& allocate channel ch1 device type disk;
3& allocate channel ch2 device type disk;
4& backup as compressed backupset
5& incremental level 1 database
6& format='/u01/app/oracle/bk/rmbk/Inc_1_%d_%U'
7& tag='Inc_1';
8& release channel ch1;
9& release channel ch2;}
RMAN& list backup by file;
5.累计增量备份(1级)
RMAN& run{
2& allocate channel ch1 device type disk;
3& backup as compressed backupset
4& incremental level 1 cumulative database
5& format '/u01/app/oracle/bk/rmbk/Cum_1_%d_%U'
6& tag='Cum_1';
7& release channel ch1;}
6.备份表空间
RMAN& run{
2& allocate channel ch1 device type disk;
3& backup as compressed backupset
4& tablespace users,example
5& format='/u01/app/oracle/bk/rmbk/tbs_%d_%U'
6& tag='tbs';
RMAN& list backupset tag=tbs;
7.备份数据文件
RMAN& run{
2& allocate channel ch1 device type disk;
3& backup as compressed backupset
4& datafile 3
5& format='/u01/app/oracle/bk/rmbk/df_%d_%U'
6& tag='df';
7& release channel ch1;}
8.备份归档日志
备份归档日志前,建议先使用crosscheck校验一下
crosscheck通常用于检查备份是否被删除,如果删除将会打上删除标签
RMAN& crosscheck archivelog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=148 devtype=DISK
validation succeeded for archived log
archive log filename=/u01/app/oracle/oradata/orcl/arch/log_1_117_.arc recid=111 stamp=
Crosschecked 1 objects
RMAN& sql 'alter system switch logfile';
sql statement: alter system switch logfile
RMAN& sql 'alter system switch logfile';
sql statement: alter system switch logfile
RMAN& list archivelog
List of Archived Log Copies
S Low Time
------- ---- ------- - --------- ----
A 22-OCT-10 /u01/app/oracle/oradata/orcl/arch/log_1_117_.arc
A 23-OCT-10 /u01/app/oracle/oradata/orcl/arch/log_1_118_.arc
A 23-OCT-10 /u01/app/oracle/oradata/orcl/arch/log_1_119_.arc
9.基于SCN来备份归档日志
RMAN& run{
2& allocate channel ch1 device type disk;
3& backup as compressed backupset
4& archivelog from scn 848043
5& format='/u01/app/oracle/bk/rmbk/arc_%d_%U'
6& tag='arc';
7& release channel ch1;
10.镜像备份
RMAN& run{
2& allocate channel ch1 device type disk;
3& backup as copy datafile 1,4
4& format '/u01/app/oracle/bk/rmbk/df_%d_%U'
5& tag 'copybak';
6& release channel ch1;}
RMAN& crosscheck backupset;
RMAN& change backupset 1
RMAN& validate backupset
RMAN& validate backupset 635;
12.基于catalog的数据库恢复请参考:基于catalog 的RMAN 备份与恢复
三、更多参考
有关基于用户管理的备份和备份恢复的概念请参考:
(详细描述了介质恢复及其处理)
有关RMAN的恢复与管理请参考:
RMAN 还原与恢复
有关Oracle体系结构请参考:
Oracle RMAN(基于catalog) 配置与使用步骤
RMAN(Recovery Management)是一款Oracle自带的备份恢复工具软件,是DBA的一个重要工具。专门用于数据库的备份、恢复、修复操作,同时自动管理备份。
RMAN Catalog 和 Nocatalog 的区别
一.Nocatalog Nocatalog方式 就是用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息。因此,当使用rman ...
rman 创建catalog实验及说明
请在两台机器上分别装上数据库软件,分别创建数据库,并启动数据库;
本例相关说明
一、主机作用说明:
[oracle@Oracle11gOcp_catalog ~]$ cat /...
catalog 和nocatalog模式说明
RMAN资料档案库数据总是存储在目标数据库的控制文件中,但也可以存储在单独的数据库中,该数据库称为恢复目录。
RMAN资料档案库数据存储比较
控制文件: 管理简单
恢复目录: 复制控...
Oracle RMAN备份中catalog和nocatalog区别
nocatalog方式就是用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息,即RMAN的备份信息写在本地控制文件里面。若为c...
catalog方式的rman备份与恢复示例
环境说明:
提前配置好两个库的监听与tnsnames.ora
IP:10.100.25.13 为目标数据库
IP:10.100.25.14 为恢复目录数据库(catalog data...
每一次备份都会记录很多备份信息,这些信息记录到哪里呢?记录在catalog(一个备份知识库)中。nocatalog nocatalog方式就是用control file作为catalog,每一次备份都...
Catalog方式的RMAN备份与恢复只不过是将备份恢复信息数据放在catalog目录内,普通的rman方式则是存放在控制文件中……...
rman中CATALOG命令的使用:CATALOG命令目的是将RMAN的备份集注册到控制文件类似的一系列命令有:CATALOG ARCHIVELOG ?/oradata/archive1_30.db...
没有更多推荐了,我是oracle初学者,在练习rman备份恢复的时候遇到点问题,求大神指教。_百度知道
我是oracle初学者,在练习rman备份恢复的时候遇到点问题,求大神指教。
使用的是oracle11g,用rman做好了备份后,在系统中删除了oradata/orcl/目录下的所有log文件,然后shutdownimmediate,startup,提示ORA-03113:end-of-fileoncommunicationchannel,Pro...
使用的是oracle11g , 用rman做好了备份后,在系统中删除了oradata/orcl/ 目录下的所有log文件,然后shutdown immediate , startup , 提示ORA-03113: end-of-file on communication channel, Process ID: 7908 ,Session ID: 1 Serial number: 5。书上写的是 recover d
但是我执行后提示ERROR:ORA-03114: not connected to ORACLE请问我要怎么恢复redolog文件啊?
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
采纳数:203
获赞数:387
你还没登录oracle,先启动到mount状态。
startup 后它就停在mount 状态。
先mount数据库,然后再目录下建同名文件redo01.log、redo02.log、redo03.log
然后执行alter
对于current的group,执行alter
unarchived
然后,再open,就ok了
你都备份了哪些文件呢?你的数据库处于archive状态下吗?
备份了控制文件和数据文件 在归档状态下
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Oracle数据库每日备份正常 全备不正常。全备报错信息:rman-00571,rman-005_百度知道
Oracle数据库每日备份正常 全备不正常。全备报错信息:rman-00571,rman-005
9,rman-00571,rman-03009,ora-19502,ora-27030,ora-19511请各位大神指点迷经...
9,rman-00571,rman-03009,ora-19502,ora-27030,ora-19511请各位大神指点迷经
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
AskMaclean
AskMaclean
采纳数:1212
获赞数:1701
[oracle@mlab2 ~]$ oerr ora 270302, &skgfwrt: sbtwrite2 returned error&// *Cause:
sbtwrite2 returned an error.
This happens while writing a backup//
file during a backup operation.// *Action: This error is returned from the media management software which is//
linked with Oracle.
There should be additional messages which//
explain the cause of the error.
This error usually requires//
contacting the media management vendor.写磁带错误,具体为什么错,显然你要问配RMAN 磁带配置的人
zhenggaona1
zhenggaona1
采纳数:107
获赞数:99
把整个报错内容复制一下
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。原文链接:
1. 检查数据库模式:
sqlplus /nolog
conn /as sysdba
archive log list (查看数据库是否处于归档模式中)
若为非归档,则修改数据库归档模式。
startup mount
alter database archivelog
alter database open
2.连接到target数据库
命令: connect target
/ (connect target ,如果数据库没有起来,也可要直接在rman命令下用startup进行启动数据库)
可以连接到target database.(rman 一边连接到target数据库,另外一边连接到control file(nocatalog mode),control file 中存储rman 的备份信息)
3.用list backupset 命令查看有没有备份的东西
4. 常用备份命令:
备份全库:
RMAN& backup database plus arc
(备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)
备份表空间:
RMAN& backup tablespace system plus arc
(备份指定表空间及归档的重做日志,并删除旧的归档日志)_
备份归档日志:
RMAN& backup archive
======================对整个数据库进行备份==================
1.对整个数据库进行全备份(full backup)。
只要输入命令:
2.list backupset 查看备份的具体信息
List of Backup Sets
===================
Type LV Size
Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
Status: AVAILABLE
Compressed: NO
Tag: TAG041
Piece Name: /home/oracle/flash_recovery_area/ORA10G/backupset//o1_mf_ncsnf_TAG041_4mntz78s_.bkp
Control File Included: Ckp SCN: 782019
Ckp time: 06-DEC-08
SPFILE Included: Modification time: 06-DEC-08
BS(backupset), piece是一个文件,一个BS包含多个piece.
3.rman中缺省的参数,可以通过
来进行查看(RMAN configuration parameters),我们在使用backup database命令中,可以把这些default value 用固定的值来进行替代.
4.我们可以把备份的文件才备份的目录中拷贝到磁带上,然后删除备份目录下面的备份文件,如果下次需要恢复的话,只要把文件重新拷回到用来的备份目录就可以了
5.查看control file 文件中的备份信息(因为我们做的备份是在nocatalog模式下),control file 在/u01/oracle/oradata/ora10g目录下,由于control file 是个二进制文件,要查看control file 文件中的内容,用strings control03.ctl,发现control03.ctl中有rman备份的信息了
====================0级增量备份===============
概念:全备份和0级增量备份。全备份和0级增量备份几乎是一样的。唯一的区别,0级增量备份能作为增量备份的基础,而全备份不能作为增量备份的基础。其它方面完全一致
1.backup incremental level=0(leve 0)(增量为0的备份)
2.backup incremental level 1(level=1)(增量为1的备份)
在上面的备份中,我们备份了datafile,controlfile和parameter file.没有备份的文件有归档日志,重做日志和口令文件没有备份.口令文件不需要备份,我们用orapw来创建一个
新的口令文件.rman 在nocatalog模式下,不能够对redo log file 进行备份
===================备份archivelog 在nocatalog模式下=================
命令:backup database plus archivelog delete input(delete input的意思在备份完成后,删除 archivelog文件,这个选项可要可不要,这个命令也可以用 backup incremental level=0(1,2...)来进行备份)
=======================备份表空间====================
backup tablespace tablespacename
如果我们不知道tablespace的名字,在rman中,可要通过report schema命令,来查看表空间的名字
Report of database schema
List of Permanent Datafiles
===========================
File Size(MB) Tablespace
RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
/home/oracle/oradata/ora10g/system01.dbf
/home/oracle/oradata/ora10g/undotbs01.dbf
/home/oracle/oradata/ora10g/sysaux01.dbf
/home/oracle/oradata/ora10g/users01.dbf
/home/oracle/oradata/ora10g/perfstat.dbf
List of Temporary Files
=======================
File Size(MB) Tablespace
Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
/home/oracle/oradata/ora10g/temp01.dbf
========================备份控制文件====================
backup current controlfile
backup database include current controlfile
========================备份镜像========================
在rman的备份中有两种方式:备份集(backupset)和备份镜像(image copies).镜像备份主要是文件的拷贝:copy datafile ... to ...
我们在rman&
Report of database schema
List of Permanent Datafiles
===========================
File Size(MB) Tablespace
RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
/home/oracle/oradata/ora10g/system01.dbf
/home/oracle/oradata/ora10g/undotbs01.dbf
/home/oracle/oradata/ora10g/sysaux01.dbf
/home/oracle/oradata/ora10g/users01.dbf
/home/oracle/oradata/ora10g/perfstat.dbf
List of Temporary Files
=======================
File Size(MB) Tablespace
Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
/home/oracle/oradata/ora10g/temp01.dbf
rman&copy datafile 5 to '/u01/rmanbak/tbso1bak.dbf';(copy 5 对应的schme:perfstat.dbf)
它会把tbs作为一个拷贝。我们用list backupset来看,不能够查看我们刚备份的 tbs01bak.dbf',因为它不是backupset. 我们用list copy 就能够查看我们刚才刚刚备份的文件
=======================单命令与批命令=================
rman& run{
2& allocate channel cha1
4& format '/u01/rmanbak/full_%t'
5& tag full-backup //标签可以顺便起,没关系
7& release channel cha1;
这个run中有3条命令,分别用分号来进行分割.
%c:备份片的拷贝数(从1开始编号);
%d:数据库名称;
%D:位于该月中的天数(DD);
%M:位于该年中的月份(MM);
%F:一个基于DBID唯一的名称,这个格式的形式为c-xxx-YYYYMMDD-QQ,其中xxx位该数据库的DBID,YYYYMMDD为日期,QQ是一个1-256的序列;
%n:数据库名称,并且会在右侧用x字符进行填充,使其保持长度为8;
%u:是一个由备份集编号和建立时间压缩后组成的8字符名称。利用%u可以为每个备份集产生一个唯一的名称;
%p:表示备份集中的备份片的编号,从1开始编号;
%U:是%u_%p_%c的简写形式,利用它可以为每一个备份片段(既磁盘文件)生成一个唯一的名称,这是最常用的命名方式;
%t:备份集时间戳;
%T:年月日格式(YYYYMMDD);
channel的概念:一个channel是rman于目标数据库之间的一个连接,"allocate channel"命令在目标数据库启动一个服务器进程,同时必须定义服务器进程执行备份和恢复操作使
用的I/O类型
通道控制命令可以用来:
控制rman使用的OS资源
影响并行度
指定I/O带宽的限制值(设置 limit read rate 参数)
指定备份片大小的限制(设置 limit kbytes)
指定当前打开文件的限制值(设置 limit maxopenfiles)
=================================RMAN一周典型备份方案============================
1.星期天晚上
-level 0 backup performed(全备份)
2.星期一晚上
-level 2 backup performed
3.星期二晚上
-level 2 backup performed
4.星期三晚上
-level 1 backup performed
5.星期四晚上
-level 2 backup performed
6.星期五晚上
-level 2 backup performed
7.星期六晚上
-level 2 backup performed
如果星期二需要恢复的话,只需要1+2,
如果星期四需要恢复的话,只需要1+4,
如果星期五需要恢复的话,只需要1+4+5,
如果星期六需要恢复的话,只需要1+4+5+6.
自动备份:备份脚本+crontab
rman target / msglog=bakl0.log cmdfile=bakl0 (/表示需要连接的目标数据库,msglog表示日志文件,cmdfile表示的是脚本文件)
rman target / msglog=bakl1.log cmdfile=bakl1
rman target / msglog=bakl2.log cmdfile=bakl2
实例:rman target ) msglog=/u01/rmanbak/bakl1.log cmdfile=/u01/rmanbak/bakl0
完整的命令:/u01/oracle/product/10.2.0/bin/rman target ) msglog=/u01/rmanbak/bakl1.log cmdfile=/u01/rmanbak/bakl0
把备份脚本放到/u01/rmanbak/script目录下面,vi bakl0,bakl0的内容为:
allocate channel cha1
incremental level
format '/u01/rmanbak/inc0_%u_%T'(u表示唯一的ID,大T是日期,小t是时间)
tag monday_inc0 //标签可以顺便起,没关系
release channel cha1;
,类似就可以写出bakl1,bakl2相应的脚本.
crontab -e -u oracle(改命令的意思是编辑oracle用户的定时执行(-e,edit -u oracle,oracle用户))
日 月 星期(0代表星期天)
rman target / msglog=bakl0.log cmdfile=bakl0(星期天的23:45会以oracle用户的身份来执行命令)
rman target / msglog=bakl2.log cmdfile=bakl2
rman target / msglog=bakl2.log cmdfile=bakl2
rman target / msglog=bakl1.log cmdfile=bakl1
rman target / msglog=bakl2.log cmdfile=bakl2
rman target / msglog=bakl2.log cmdfile=bakl2
rman target / msglog=bakl2.log cmdfile=bakl2
然后启动crontab ,启动crontab的命令:
root& service crond restart
=======================RMAN恢复================
在非catalog模式下,备份的信息存储在controlfile文件中,如果controlfile文件发生毁坏,那么就不能能够进行恢复,
使用在备份的时候需要把controlfile也进行自动备份
using target database control file instead of recovery catalog
RMAN configuration parameters are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/home/oracle/product/10.20/dbs/snapcf_ora10g.f'; # default
其中CONFIGURE CONTROLFILE AUTOBACKUP OFF; 没有对controlfile进行 autobackup,使用我们需要运行下面命令来对controlfile进行自动备份
RMAN& CONFIGURE CONTROLFILE AUTOBACKUP ON;
手动备份控制文件:
backup current controlfile
Dbid表示database的一个ID,将来用于恢复spfile和controlfile时候要用到.
RMAN& connect target /
connected to target database: ORA10G (DBID=)
RMAN&查看以前备份的信息
RMAN&delete backupset 24;//24代表backupset 的编号
RMAN&backup format '/u01/rmanbak/full_%T_%U.bak' data(进行一次全备份)
验证备份:
RMAN& validate backupset 3;
//3代表backupset的编号
口令文件丢失(不属于rman备份的范畴),我们只需要用一个命令来重建这个文件就可以了:orapw file=orapwsid password=pass entries=5;
//口令文件的路径:/u01/oracle/product/10.20/db_1/dbs目录下
oracle& cd /u01/oracle/product/10.20/db_1/dbs
oracle& rm orapwora10g;(文件删除,模拟丢失)
oracle& orapwd file=orapwora10g password=oracle entries=5;(重新建立一个文件),entries的意思(DBA的用户最多有5个)
SPFILE丢失:
set dbid ;
restore sp
set dbid ;
oracle& mv spfileora10g.ora spora10g.ora
oracle&rman target /;
startup failed: ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/home/oracle/product/10.20/dbs/initora10g.ora'
rman&set dbid ;
rman&restore sp
执行该命令,如果没有找到的话,那可能是文件的路径发生错误.可以通过直接赋予它的文件
rman&restore spfile from '/u01/oracle/flash_recovery_area/ORA10G/autobackup//o1_mf_s_mw7xc79_.bkp
在dbs/目录下产生spfileora10g.ora文件。证明spfile 已经恢复好
rman&(如果该命令不能够启动数据库,那么需要set dbid )
controlfile 丢失:
restore control
注意:在做了alter dat会把online redelog file清空,数据文件丢失.所以这个时候要做一个全备份。
oracle&rm *.ctl
oracle&rman target / ;//不能够连接到rman ,因为controlfile丢失
oracle&sqlplus /
SQL& //因为controlfile丢失,不能够正常shutdown
oracle&rman target /;
rman&restore control
rman&alter dat
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of alter db command at 12/09/:13
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/home/oracle/oradata/ora10g/system01.dbf
//出错, redo log的scn记录在controlfile里面的,因为我们有新的controlfile,所以需要
resetlogs命令表示一个数据库逻辑生存期的结束和另一个数据库逻辑生存期的开始,每次使用resetlogs命令的时候,SCN不会被重置,不过oracle会重置日志序列号,而且会重置
联机重做日志内容.
这样做是为了防止不完全恢复后日志序列会发生冲突(因为现有日志和数据文件间有了时间差)。
rman&alter dat
Redolog file丢失:(下面的这些语句一定要在sqlplus中执行,不是在rman中执行)
(sqlplus/nolog)
3.recover d(media recovery)
数据文件丢失(在rman中执行sql语句,在sql后面用双引号括起来):
1. sql "alter database datafile 3 offline";
2. restore datafile 3
3. recover datafile 3
4. sql "alter database datafile 3 online";
表空间丢失:
1. sql "alter tablespace users offline";//如果文件不存在,则用 sql "alter tablespace users offline immeidate";
3. reco //与online redolog file 信息一致
4. sql "alter tablespace users online";
非catalog方式完全恢复
数据库出现问题:
2.restore control
6.alter dat
oracle ora10g& rm *;
oracle ora10g&
oracle ora10g&
//数据文件,控制文件全部删除
oracle ora10g& rman target /; //因为controlfile 丢失,不能够连接到rman
oracle ora10g& sqlplus /
oracle ora10g& connect /
oracle ora10g&
oracle ora10g& rman target /
rman& restore control
rman& //online redolog 不存在
SQL&recover d //当redo log丢失,数据库在缺省的方式下,是不容许进行recover操作的,那么如何在这种情况下操作呢
vi /u01/product/10.20/dbs/initora10g.ora,在这个文件的最后一行添加
*.allow_resetlogs_corruption='TRUE'; //容许resetlog corruption
SQL&startup pfile='/u01/product/10.20/dbs/initora10g.ora'
SQL&alter dat
基于时间点的恢复:
set until time "to_date(07/01/02 15:00:00','mm/dd/yy hh24:mi:ss')";
ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS';
2.restore database until time "to_date(' 13:19:00','YYYY-MM-DD HH24:MI:SS')";
3.recover database until time "to_date(' 13:19:00','YYYY-MM-DD HH24:MI:SS')";
4.alter dat
如果有open resetlogs,都是不完整恢复.
基于 SCN的恢复:
2.restore database until scn 10000;
3.recover database until scn 10000;
4.alter dat
基于日志序列的恢复:
2.restore database until SEQUENCE 100 thread 1; //100是日志序列
3.recover database until SEQUENCE 100 thread 1;
4.alter dat
日志序列查看命令: SQL&select * from v$其中有一个sequence字段.resetlogs就会把sequence 置为1
=================================RMAN catalog模式下的备份与恢复=====================
1.创建Catalog所需要的表空间
SQL&create tablespace rman_ts size datafile '/u01/oracle/oradata/ora10g/rmants.dbf' 20M;
2.创建RMAN用户并授权
SQL&create user rman identified by rman default tablespace rman_ts quota unlimited on rman_
SQL&grant recovery_catalog_(grant connect to rman)
查看角色所拥有的权限: select * from dba_sys_privs where grantee='RECOVERY_CATALOG_OWNER';
(RECOVER_CATALOG_OWNER,CONNECT,RESOURCE)
3.创建恢复目录
oracle&rman catalog rman/rman
RMAN&create catalog tablespace rman_
RMAN&(database是target database)
database registered in recovery catalog
starting full resync of recovery catalog
full resync complete
RMAN& connect target /;
以后要使用备份和恢复,需要连接到两个数据库中,命令:
oracle&rman target / catalog rman/rman (第一斜杠表示target数据库,catalog表示catalog目录 rman/rman表示catalog用户名和密码)
命令执行后显示:
Recovery Manager: Release 10.2.0.1.0 - Production on Wed Dec 10 15:00:42 2008
Copyright (c) , Oracle.
All rights reserved.
connected to target database: ORA10G (DBID=)
connected to recovery catalog database
Report schema
Report shema是指在数据库中需找schema
List backup
从control读取信息
Crosscheck backup
看一下backup的文件,检查controlfile中的目录或文件是否真正在磁盘上
Delete backupset 24
24代表backupset 的编号, 既delete目录,也delete你的文件
注意:在做了alter dat会把online redelog file清空,数据文件丢失.所以这个时候要做一个全备份。
resetlogs命令表示一个数据库逻辑生存期的结束和另一个数据库逻辑生存期的开始,每次使用resetlogs命令的时候,SCN不会被重置,不过oracle会重置日志序列号,而且会重置
联机重做日志内容.这样做是为了防止不完全恢复后日志序列会发生冲突(因为现有日志和数据文件间有了时间差)。
Rman 归档文件丢失导致不能备份的,在备份前先执行以下两条命令
RMAN 的优缺点及RMAN 备份及恢复步骤------转
一. RMAN 备份的一些优点和OS命令备份方式相比,使用RMAN的优点1
备份执行期间不需要人工干预,因此减少了误操作的机会;2
可以有效的将备份和恢复结合起来;3
支持除逻辑备份以外的所有备...
Rman备份方案设计
1.用catalog连接目标数据库
rman catalog rmanuser/rmanuser target sys/sysdba@rac1
2.建立catalog脚本
RMAN& re...
Oracle11gR2——RMAN备份完整实施
软件环境:RHEL6.4 Oracle11gR2
备份环境:目标数据库处于归档模式,RMAN使用了目录数据库,使用nfs让RMAN直接备份到远程机器
备份策略:周末实施lv0增量备份,工作日实施l...
Oracle的rman备份与恢复
1、开启归档模式
查看是否处于归档模式
SQL& archive log list
Database log mode
No Archive Mode
Automatic ...
Oracle中Rman自动备份数据库 .
1 数据库修改为自动归档模式
2 修改rman参数
3 rman自动备份脚本
4 设置系统自动备份参数
恢复整个数据库
恢复单个表空间
1 数据库修改为自动...
RMAN catalog
的创建和使用
RMAN 基于Catalog 的方式提供了更安全,更可靠的数据保护方式,同时也可以将常用备份脚本置于其中……...
一. RAC 并发
RAC 的本质是一个数据库,运行在多台计算机上的数据库,它的主要任务是数据库就是事务处理,它通过 Distributed Lock Management(DLM:分布式锁管...
如果要说DBA工作中最重要的职责(没有之一),那无疑就是保证客户数据的安全和完整,可以看到几乎任何一本Oracle DBA的技术书籍一定都会把大篇幅来介绍数据库的备份与恢复,从中也可以看到备份和恢复的...
没有更多推荐了,

我要回帖

更多关于 获取异地人员相关信息时发生错误 的文章

 

随机推荐