oracle学习系列之Rman学习Word下载.docx
- 文档编号:16152673
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:10
- 大小:18.45KB
oracle学习系列之Rman学习Word下载.docx
《oracle学习系列之Rman学习Word下载.docx》由会员分享,可在线阅读,更多相关《oracle学习系列之Rman学习Word下载.docx(10页珍藏版)》请在冰豆网上搜索。
需要注意的一点是,rman中的sql环境不能执行SELECT语句,就算执行不报错,也不出结果。
select
*frommember.test'
sqlstatement:
select
*frommember.test(可以看出没有任何数据显示)
(4)查看默认RMAN配置
showall
CONFIGURERETENTIONPOLICYTOREDUNDANCY1;
#default
设置的保留策略冗余度为1
CONFIGUREBACKUPOPTIMIZATIONOFF;
备份优化为off
CONFIGUREDEFAULTDEVICETYPETODISK;
默认的配置通道为磁盘,如果是sbt就为磁带设备
CONFIGURECONTROLFILEAUTOBACKUPOFF;
默认配置controlfile不自动备份
CONFIGURECONTROLFILEAUTOBACKUPFORMATFORDEVICETYPEDISKTO'
%F'
controlfile自动备份的位置
CONFIGUREDEVICETYPEDISKPARALLELISM1BACKUPTYPETOBACKUPSET;
备份类型为backupset,备份类型的并行度为1
CONFIGUREDATAFILEBACKUPCOPIESFORDEVICETYPEDISKTO1;
数据文件备份的拷贝为1
CONFIGUREARCHIVELOGBACKUPCOPIESFORDEVICETYPEDISKTO1;
归档日志文件备份的拷贝为1
CONFIGUREMAXSETSIZETOUNLIMITED;
备份集大小不设上限
CONFIGUREENCRYPTIONFORDATABASEOFF;
数据库加密技术为off
CONFIGUREENCRYPTIONALGORITHM'
AES128'
数据库加密算法'
CONFIGUREARCHIVELOGDELETIONPOLICYTONONE;
归档日志的删除策略为NONE
CONFIGURESNAPSHOTCONTROLFILENAMETO'
/data/ora11g/product/11.2.0/db_1/dbs/snapcf_zsddb.f'
controlfile的快照命名为'
(5)修改默认RMAN参数设置
#configureretentionpolicytorecoverywindowof7days;
#configurecontrolfileautobackupon;
#configurecontrolfileautobackupformatfordevicetypediskto'
/data/backup/rman/con_%F'
3.rman基本备份命令
(1)对数据库进行备份
*备份数据库
BACKUPDATABASE;
注意:
也可以指定备份的位置:
BACKUPDATABASEFORMAT'
/data/backup/rman/bak_%U'
*list命令查看刚刚创建的备份信息:
listbackupofdatabase;
(2)对表空间进行备份
*备份表空间
backuptablespaceHDMEMBER;
*通过LISTBACKUP查看一下备份
listbackupofTABLESPACEHDMEMBER;
(3)备份指定数据文件
*查看对应的数据文件及其序号
selectfile_name,file_id,tablespace_namefromdba_data_files
*再通过BACKUPDATAFILE备份指定序号的数据文件
BACKUPDATAFILEn;
*通过listbackup查看备份
LISTBACKUPOFDATAFILEn;
(4)备份控制文件
*第一种,做任何备份的时候,自动备份控制文件
CONFIGURECONTROLFILEAUTOBACKUPON;
*第二种,手动执行控制文件备份
BACKUPCURRENTCONTROLFILE;
*第三种,执行BACKUP时指定INCLUDECURRENTCONTROLFILE参数
BACKUPDATABASEINCLUDECURRENTCONTROLFILE;
*查看备份的控制文件
LISTBACKUPOFCONTROLFILE;
*使用alterdatabasebackupcontrolfile备份控制文件
SQL>
alterdatabasebackupcontrolfiletotrace;
或者
alterdatabasebackupcontrolfiletotraceas'
/data/controlfile1.cof'
(这样你可以查看controlfile的构成)
(5)备份归档日志文件
*利用BACKUPARCHIVELOG命令备份
BACKUPARCHIVELOGALL;
*BACKUP过程中利用PLUSARCHIVELOG参数备份
BACKUPDATABASEPLUSARCHIVELOG;
1>
.运行ALTERSYSTEMARCHIVELOGCURRENT语句对当前redolog进行归档。
2>
.执行BACKUPARCHIVELOGALL命令备份所有已归档日志。
3>
.执行BACKUP命令对指定项进行备份。
4>
.再次运行ALTERSYSTEMARCHIVELOGCURRENT对当前redolog归档。
5>
.对新生成的尚未备份的归档文件进行备份。
*查看已备份的归档日志片段:
LISTBACKUPOFARCHIVELOGALL;
4.rman其他命令
删除命令
*
删除过期备份(RMAN会根据冗余策略确定备份是否过期)
RMAN>
deleteobsolete;
删除无效备份(通过CROSSCHECK命令核对备份集,如果发现备份无效,rman会将该备份集标记为EXPIRED状态。
)
deleteexpiredbackup;
删除特定备份集(通过listbackup选择你所要删除的备份集)
deletebackupset12;
删除特定备份片
deletebackuppiece'
/data/backup/zsd_bk.bak'
删除所有备份集
deletebackup;
删除归档目录中已备份的归档日志
backuparchivelogalldeleteinput;
report命令
主要是用于当前备份信息的分析,如哪些备份已经过期,哪些文件该备份,哪些备份不可用,哪些备份可以删除。
查看过期备份
reportobsolete;
crosscheck命令
用来检查备份或归档物理文件的状态,如果物理文件存在,并且控制文件(或恢复目录)中有匹配记录,则标记该对象的状态为available(有效),如果
文件已经不存在,则标记该对象为expired(无效)
检查所有归档文件:
crosscheckarchivelogall;
检查所有备份集:
crosscheckbackup;
rmanvalidate命令
RMAN能够检测物理和逻辑讹误。
validate命令帮助保证备份文件存在于合适的位置,可读取,并且没有逻辑及物理讹误。
测试任一特定备份集
validatebackupset9;
测试整个数据库和归档日志备份集
backupvalidatedatabasearchivelogall;
提示:
监控和验证RMAN作业
V$RMAN_STATUS视图显示所有完成作业的状态以及命令
selectoperation,status,start_time,end_timefromv$rman_status;
V$SESSION_LOGGOPS视图上查询估计备份的进度
selectopname,to_char(start_time,'
DD-MON-YYHH24:
MI'
)"
Startofbackup"
Sofar,totalwork,elapsed_seconds/60"
ELAPSEDTIMEINMINUTES"
ROUND(sofar/totalwork*100,2)"
PercentageCompletedsofar"
fromv$session_longopswhere
5.
rman实战
#以下是一个实战的rman备份脚本
BACKUPASCOMPRESSEDBACKUPSET
SKIPINACCESSIBLEFILESPERSET10DATABASEPLUSARCHIVELOGFILESPERSET20
DELETEALLINPUT;
其中COMPRESSED:
表示压缩的备份
SKIPINACCESSIBLE:
表示跳过不可读的文件。
我们知道一些offline的数据文件只要存在于磁盘上就仍然可被读取,但是
可能有些文件已经被删除或移到它处造成不可读,加上这个参数就会跳过这些文件;
FILESPERSET10:
表示一个备份集中有多少个文件,这个就是一个备份集有10个文件。
#以下是用来检验filesperset2这个参数的意义
BACKUPASCOMPRESSEDBACKUPSETSKIPINACCESSIBLEFILESPERSET2DATABASE
rman恢复:
明确两个概念:
数据库修复(Restore)和数据库恢复(Recover)
restore:
是指利用备份集的数据文件来替换已经损坏的数据库文件或者将其恢复到一个新的位置
recover:
是指应用所有重做日志,将数据库恢复到崩溃前的状态,或者应用部分redo,将数据库恢复到指定的时间点.(前提是:
所有重做日志文件都在,
包括在线和归档的)
1.对数据库进行完全介质恢复
(1)启动数据库到加载状态:
SHUTDOWNIMMEDIATE;
STARTUPMOUNT;
(2)执行恢复操作
RESTOREDATABASE;
RECOVERDATABASEDELETEARCHIVELOGSSKIPTABLESPACETEMP;
注意:
DELETEARCHIVELOGS和SKIPTABLESPACE两个参数是可选择的,作用如下:
DELETEARCHIVELOGS:
表示RMAN将在完成恢复过程后自动删除那些在恢复过程中修复的归档日志文件。
SKIPTABLESPACE:
跳过指定表空间,比如临时表,当然临时表空间即使你不跳过它也不会恢复的。
(3)打开数据库
ALTERDATABASEOPEN;
2.恢复表空间
1、启动数据库到加载状态
2、进行恢复操作
ALTERTABLESPACEHDMEMBEROFFLINEIMMEDIATE'
RESTORETABLESPACEHDMEMBER;
RECOVERTABLESPACEHDMEMBER;
ALTERTABLESPACEHDMEMBERONLINE'
3、打开数据库
3.恢复数据文件
SQL'
ALTERDATABASEDATAFILE5OFFLINE'
RESTOREDATAFILE5;
RECOVERDATAFILE5;
ALTERDATABASEDATAFILE5ONLINE'
提示:
查询对应的数据文件,表空间和数据文件序号:
附个SQL:
用来查询数据文件,临时文件与表空间对应及数据文件序号:
setlinesize999;
selectts.tablespace_name,df.file_name,df.file_id,tf.file_name
fromdba_tablespacests,dba_data_filesdf,dba_temp_filestf
wherets.tablespace_name=df.tablespace_name(+)
andts.tablespace_name=tf.tablespace_name(+);
示例:
归档模式下,假设某数据文件丢失,恢复该数据文件
1.造假数据
sqlplus/nolog
connmember/member
createtablezsd(namevarchar2(50));
insertintozsdvalues('
test1'
);
test2'
test3'
2.关闭,删除文件,启动数据库
conn/assysdba
shutdownimmediate;
host
[oracle@oracle-n1~]$rm-rf/data/ora11g/oradata/zsddb/hdmember01.dbf
archiveloglist(查看一下是否归档)
3.查看一下示例,并恢复数据库
selectinstance_name,statusfromv$instance
setoracle_sid=zsddb
rmantarget/
restoredatafile'
/data/ora11g/oradata/zsddb/hdmember01.dbf'
recoverdatafile'
alterdatabaseopen;
示例:
丢失控制文件的恢复
SQL>
[oracle@oracle-n1~]$rm-rf/data/ora11g/oradata/zsddb/control*
进入rman
rmantarget/
随意指定一个DBID
setdbid3391142503
restorecontrolfilefrom'
/data/ora11g/product/11.2.0/db_1/dbs/con_c-1552557445-20130520-06'
sql'
alterdatabasemount'
restoredatabase;
recoverdatabase;
alterdatabaseopenresetlogs'
(还必须重建临时表空间)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 学习 系列 Rman