RedHat54Oracle11gASMStandalone备份与恢复.docx
- 文档编号:5245567
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:25
- 大小:183.75KB
RedHat54Oracle11gASMStandalone备份与恢复.docx
《RedHat54Oracle11gASMStandalone备份与恢复.docx》由会员分享,可在线阅读,更多相关《RedHat54Oracle11gASMStandalone备份与恢复.docx(25页珍藏版)》请在冰豆网上搜索。
RedHat54Oracle11gASMStandalone备份与恢复
RedHat5.4_Oracle11g_ASM_Standalone备份与恢复
一、环境确认
本备份与恢复不采用catalog模式。
1.数据库确认
用Oracle用户dba连接执行。
(1)归档模式
SQL>selectlog_modefromv$database;
LOG_MODE
------------
ARCHIVELOG
或者SQL>archiveloglist;
如果不是归档模式,执行如下操作:
SQL>alterdatabasemount;
SQL>alterdatabasearchive;
SQL>shutdownimmediate;
SQL>startup;
(2)打开快速恢复区
SQL>showparameterdb_recovery_file_dest_
NAMETYPEVALUE
-----------------------------------------------------------------------------
db_recovery_file_deststring+DATA
db_recovery_file_dest_sizebiginteger10000M
这两个参数有值,说明已经打开。
(3)归档备份份数
SQL>showparameterlog_archive_dest;
看到log_archive_dest_1----->log_archive_dest_31,且没有值,说明只有1份且保存在快速恢复区。
(4)控制文件多工
SQL>selectnamefromv$controlfile
NAME
--------------------------------------------------------------------------------
+DATA/orcl/controlfile/current.256.831231923
+DATA/orcl/controlfile/current.257.831231925
说明多工。
(5)日志文件多工
SQL>selectgroup#,memberfromv$logfile;
GROUP#MEMBER
------------------------------------------------------------
1+DATA/orcl/onlinelog/group_1.258.831231927
1+DATA/orcl/onlinelog/group_1.259.831231931
2+DATA/orcl/onlinelog/group_2.260.831231933
2+DATA/orcl/onlinelog/group_2.261.831231939
3+DATA/orcl/onlinelog/group_3.262.831231941
3+DATA/orcl/onlinelog/group_3.263.831231945
说明多工,且放在不同文件。
2.RMAN连接数据库
Oracle用户,执行:
[root@node1~]#su-oracle
[oracle@node1~]$rmantarget/
RecoveryManager:
Release11.2.0.3.0-ProductiononTueNov1211:
11:
482013
Copyright(c)1982,2011,Oracleand/oritsaffiliates.Allrightsreserved.
connectedtotargetdatabase(notstarted)
RMAN>
3.RMAN设置
RMAN>showall;
usingtargetdatabasecontrolfileinsteadofrecoverycatalog
RMANconfigurationparametersfordatabasewithdb_unique_nameORCLare:
CONFIGURERETENTIONPOLICYTOREDUNDANCY1;#default----冗余数为1,1份就有效
CONFIGUREBACKUPOPTIMIZATIONOFF;#default
CONFIGUREDEFAULTDEVICETYPETODISK;#default
CONFIGURECONTROLFILEAUTOBACKUPOFF;#default
CONFIGURECONTROLFILEAUTOBACKUPFORMATFORDEVICETYPEDISKTO'%F';#default
CONFIGUREDEVICETYPEDISKPARALLELISM1BACKUPTYPETOBACKUPSET;#default
CONFIGUREDATAFILEBACKUPCOPIESFORDEVICETYPEDISKTO1;#default
CONFIGUREARCHIVELOGBACKUPCOPIESFORDEVICETYPEDISKTO1;#default
CONFIGUREMAXSETSIZETOUNLIMITED;#default
CONFIGUREENCRYPTIONFORDATABASEOFF;#default
CONFIGUREENCRYPTIONALGORITHM'AES128';#default
CONFIGURECOMPRESSIONALGORITHM'BASIC'ASOFRELEASE'DEFAULT'OPTIMIZEFORLOADTRUE;#default
CONFIGUREARCHIVELOGDELETIONPOLICYTONONE;#default
CONFIGURESNAPSHOTCONTROLFILENAMETO'/u01/app/oracle/product/11.2.0.3/db_1/dbs/snapcf_orcl.f';#default
缺省设置。
基本够用,不够用,采用如下形式修改。
(1)参数设置
--配置自动通道
11g如果不分配,系统会缺省分配通道。
--指定备份保留策略
RMAN>CONFIGURERETENTIONPOLICYTOrecoverywindowto7days;
--指定要创建的备份副本数
不用设置。
--设置默认备份类型:
backupset/copy
RMAN>configuredevicetypediskbackuptypetobackupset;
--限制备份片段大小
RMAN>CONFIGUREMAXSETSIZETOUNLIMITED;--无限制
--在备份中排出表空间
--启用和禁用备份优化
RMAN>CONFIGUREBACKUPOPTIMIZATIONOFF;---关闭优化备份,只读、脱机文件也备份
--配置控制文件的自动备份
RMAN>configurecontrolfileautobackupon;--自动备份控制文件
--定义归档日志删除策略
RMAN>CONFIGUREARCHIVELOGDELETIONPOLICYTONONE;--
--指定备份的并行度
RMAN>configuredevicetypediskparallelism3;--设置并行数3
--设置用户备份的压缩参数
RMAN>configuredevicetypediskbackuptypetocompressedbackupset;--压缩备份集,针对数据文件
--设置用户备份的加密参数
RMAN>CONFIGUREENCRYPTIONFORDATABASEOFF;--关闭加密
(2)RMAN参数查看
RMAN>showcontrolfileautobackupformat;
RMAN>showexclude;
RMAN>showall;
(3)RMAN参数恢复缺省值
RMAN>configurecontrolfileautobackupclear;---恢复默认值
4.快速恢复区空间管理
(1)增大快速恢复区size,增加ASM磁盘组磁盘
(2)用RRAM删除不用的文件:
不用备份文件、过期归档日志文件、无效归档文件
1)rman>reportobsolete
2)rman>deleteobsolete
二、数据库备份
1.RMAN备份对象及备份操作
1.1备份创建
(1)spfile
RMAN>backupspfile;--备份保存在快速恢复区
RMAN>backupspfileformat'/u01/bak/spfile.bak';--备份到指定目录和文件名下
(2)controlfile
RMAN>backupcurrentcontrolfile;
RMAN>backupcurrentcontrolfileformat'/u01/bak/controlfile.bak';
(3)datafile
RMAN>backupdatafile1;---备份1号数据文件
RMAN>backupdatafile'/u01/oracle/orcl/system01.dbf';
RMAN>backupdatafile1,2,3,4;
RMAN>backupdatafile1,2,3format'/u01/bak/db%U.bak';
(4)tablespace
RMAN>backuptablespaceusers;
RMAN>backuptablespaceusers,example;
RMAN>backuptablespaceusers,sysauxformat'/u01/bak/tbs%U.bak';
(5)Database
RMAN>backupdatabase;---备spfilecontrolfiledatafile;打开优化备份时,不备只读、脱机文件
RMAN>backupfulldatabase;---备spfilecontrolfiledatafile;打开优化备份,也备份只读和脱机文件
RMAN>backupdatabaseplusarchivelog;--备spfilecontrolfiledatafilearchivelog--此时归档日志在归档日志路径和备份路径都存在
RMAN>backupdatabaseplusarchivelogdeleteinput;--备spfilecontrolfiledatafilearchivelog,并删除归档日志路径下的归档日志
1.2备份查看
RMAN>listbackup;--查看所有备份
RMAN>listbackupof<>;--查看具体类型备份spfile/controlfile/datafile<>/tablespace<>/database/archivelogall
RMAN>listcopy;--查看copy
RMAN>listcopyof<>;--查看某种类型的copy
RMAN>crosscheck;---执行备份检查,确认备份是否有效
1.3备份删除
RMAN>deletebackupset30;--删除key为30的备份集
RMAN>deletebackup;---删除全部备份
RMAN>deleteexpiredbackup;--删除过期备份
RMAN>deleteobsolete;---删除无效备份
RMAN>deletearchiveloguntiltime'sysdate-10';---删除10天前的归档日志(一定要注意只能删除backupdatabase之前的归档日志)
RMAN>changebackupset31unavailable;---可以通过该命令将不在快速恢复区的指定key备份改为不可用
RMAN>changebackupset31available;---将不在快速恢复区的指定key备份改为可用
1.4说明
1)Copy命令会按照原文件大小复制,不节省空间,在此不使用。
2)联机redo日志不需要备,备也没有用。
3)每一个自动归档日志都是对一个联机日志的copy,因此不要使用RMAN>deletecopy命令删除。
4)仅当符合保留策略的备份不存在时,优化备份才会RMAN备份只读表空间;
5)如果表空间改为可写的,立即备份该表空间;
6)可用backup的skipreadonly跳过只读表空间或者文件;
7)只要没有用resetlog打开数据库,或者重建控制文件,或者没有clear过日志文件,备份才是有效的,否则就需要重新备份。
2.RMAN备份级别
2.1全库备份
RMAN>backupdatabase;---备spfilecontrolfiledatafile;打开优化备份时,不备只读、脱机文件
RMAN>backupfulldatabase;---备spfilecontrolfiledatafile;打开优化备份,也备份只读和脱机文件
RMAN>backupdatabaseplusarchivelog;--备spfilecontrolfiledatafilearchivelog--此时归档日志在归档日志路径和备份路径都存在
RMAN>backupdatabaseplusarchivelogdeleteinput;--备spfilecontrolfiledatafilearchivelog,并删除归档日志路径下的归档日志
2.2增量备份
RMAN>backupincrementallevel0/1/2/3/4database;--差异增量备份
RMAN>backupcumulativeincrementallevel1/2/3/4database;--累积增量备份
说明:
⏹0级备份是增量备份基础,后续备份级别在0级基础上。
⏹全库备份不能作为增量备份基础,是独立的全库备份,恢复也不能使用增量备份。
⏹备份级别0-4,共5个级别。
2.3备份级别设计
周日周一周二周三周四周五周六
L0L1L1L1L1cL1L1
3.RMAN备份脚本
3.1备份保存在快速恢复区
bak0.rman
run{
allocatechannelch0typedisk;
backupincrementallevel0databaseplusarchivelogdeleteinput;
releasechannelch0;
}
bak1.rman
run{
allocatechannelch1typedisk;
backupincrementallevel1databaseplusarchivelogdeleteinput;
releasechannelch1;
}
bak1c.rman
run{
allocatechannelch1ctypedisk;
backupcumulativeincrementallevel1databaseplusarchivelogdeleteinput;
releasechannelch1c;
}
3.2备份保存在本地文件系统
bak0_loc.rman
run{
allocatechannelch0_localtypedisk;
backupincrementallevel0
format'/u01/bak/%d_%U_%T'
databaseplusarchivelogdeleteinput;
releasechannelch0_local;
}
bak1_loc.rman
run{
allocatechannelch1_localtypedisk;
backupincrementallevel1
format'/u01/bak/%d_%U_%T'
databaseplusarchivelogdeleteinput;
releasechannelch1_local;
}
bak1c_loc.rman
run{
allocatechannelch1c_localtypedisk;
backupcumulativeincrementallevel1
format'/u01/bak/%d_%U_%T'
databaseplusarchivelogdeleteinput;
releasechannelch1c_local;
}
3.3format说明:
format:
%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);
3.3备份脚本执行
Oracle用户下,执行:
$rmantarget/cmdfile=/u01/bak/bak0.rmanlog=/u01/bak/log_bak0.log
$rmantarget/cmdfile=/u01/bak/bak1.rmanlog=/u01/bak/log_bak1.log
$rmantarget/cmdfile=/u01/bak/bak1c.rmanlog=/u01/bak/log_bak1c.log
3.4计划任务
#crontab-e-uoracle
4523**0rmantarget/cmdfile=/u01/bak/bak0.rmanlog=/u01/bak/log_bak0_0.log
4523**1rmantarget/cmdfile=/u01/bak/bak1.rmanlog=/u01/bak/log_bak1_1.log
4523**2rmantarget/cmdfile=/u01/bak/bak1.rmanlog=/u01/bak/log_bak1_2.log
4523**3rmantarget/cmdfile=/u01/bak/bak1.rmanlog=/u01/bak/log_bak1_3.log
4523**4rmantarget/cmdfile=/u01/bak/bak1c.rmanlog=/u01/bak/log_bak1c_4.log
4523**5rmantarget/cmdfile=/u01/bak/bak1.rmanlog=/u01/bak/log_bak1_5.log
4523**6rmantarget/cmdfile=/u01/bak/bak1.rmanlog=/u01/bak/log_bak1_6.log
4.逻辑备份
逻辑备份是数据备份,作为数据库备份的补充,可以每月备份一次。
5.异地保存
可以将逻辑备份的dmp文件和RMAN备份异地留存一份。
三、用RMAN执行数据库恢复
1.Spfile丢失
不关闭数据库解决:
$ls<路径><文件名(包含_ncsnf_)>.bkp----查找备份文件名,如果ASM,类似这样的路径+data/orcl/BACKUPSET/2013_11_13,文件名:
ncsnn1_TAG20131113T161155_0.305.831399181
$exportORACLE_SID=<不存在的实例名(如:
abc)>
$rmantarget/
RMAN>startupnomount;
RMAN>restorespfilefrom<上面查找到的备份文件名>;
RMAN>shutdownabort;
RMAN>exit
$ls$ORACLE_HOME/dbs/spfileabc.ora----找到新生产的spfile文件
$strings$ORACLE_HOME/dbs/spfileabc.ora|head-2---可看到该文件内部记录的实例名即对应的原实例名
$mv$ORACLE_HOME/dbs/spfileabc.ora$ORACLE_HOME/dbs/spfile<原实例名>.ora
$.~/.bash_profile------改回oracle用户环境变量
$sqlplus/assysdba
如果是ASM管理的spfile,则还需要重启,spfile位置指向新的位置。
但如果使用crs_start–all和srvctlstartdatabase–dorcl都不能启动数据库,因为spfile配置信息没有修改,需要srvctlremovedatabase–dorcl,然后用oracle用户:
srvctladddatabase–dorcl–o/u01/app/oracle/product/11.2.0.3/db_1,再grid用户:
srvctlconfigdatabase–dorcl看到正常。
也可以采用关闭数据库到nomount的办法:
restorespfilefrom<上面查找到的备份文件名>;其它步骤一样。
2.temp.dbf丢失
$sqlplus/assysdba
SQL>createtemporarytablespace<新临时表空间名>tempfile<临时表空间文件名>size100Mautoextendonuniformsize1M;
SQL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RedHat54Oracle11gASMStandalone 备份 恢复
![提示](https://static.bdocx.com/images/bang_tan.gif)