读书笔记RMAN备份命令.docx

上传人:b****6 文档编号:7712367 上传时间:2023-01-25 格式:DOCX 页数:14 大小:22.67KB
下载 相关 举报
读书笔记RMAN备份命令.docx_第1页
第1页 / 共14页
读书笔记RMAN备份命令.docx_第2页
第2页 / 共14页
读书笔记RMAN备份命令.docx_第3页
第3页 / 共14页
读书笔记RMAN备份命令.docx_第4页
第4页 / 共14页
读书笔记RMAN备份命令.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

读书笔记RMAN备份命令.docx

《读书笔记RMAN备份命令.docx》由会员分享,可在线阅读,更多相关《读书笔记RMAN备份命令.docx(14页珍藏版)》请在冰豆网上搜索。

读书笔记RMAN备份命令.docx

读书笔记RMAN备份命令

读书笔记之RMAN备份命令

一备份命令简介

·连接本地数据库

WIN下:

>SETORACLE_SID=oraclesid

>RMANTARGET/

Linux/unix下:

$exportORACLE_SID=oraclesid

$rmantarget/

Tip:

如果数据库在OPEN状态执行备份(即READWRITE状态),则数据库必须置于归档模式,否则执行备份时会出现ORA-19602错误。

·执行操作系统命令

RMAN>HOST;

·执行SQL语句

RMAN>SQL‘ALTERSYSTEMARCHIVELOGALL’;

Tip:

RMAN中的SQL不能执行select语句,可以执行,但是看不到结果。

Tip:

一些控制RMAN环境变量,或操作CATALOG的操作都不能在RUN{}块中执行,如:

CONFIGUER、LIST、REPORT等。

·整库备份

RMAN>BACKUPDATABASE;

Tip:

会生成两个备份集(存数数据文件,存储控制文件和SPFILE)在安装目录下。

RMAN>BACKUPDATABASEFROMAT‘F:

\ORACLE\BACKUP\NAME_%U’;

Tip:

要确保format的目录是存在的,否则会报错。

RMAN>LISTBACKUPOFDATABASE查看创建的全库备份

·表空间备份

RMAN>BACKUPTABLESPACEUSERS;

Tip:

只要实例启动并处于加载状态,无论数据库是否打开,都可以在RMAN中对表空间进行备份。

RMAN>LISTBACKUPOFTABLESPACEUSERS;查看表空间备份

·数据文件的备份

RMAN>BACKUPDATAFILE‘数据文件路径’/FILE_ID;

Tip:

数据文件路径和FILE_ID可以通过数据字典DBA_DATA_FILES或V$DATAFILE查询。

n可以制定多个序号,序号之前用逗号隔开就行。

RMAN>LISTBACKUPOFDATAFILEn;查询制定数据文件备份

·控制文件的备份

RMAN>BACKUPCURRENTCONTROLFILE;手工执行备份

RMAN>BACKUPDATABASEINCLUDECURRENTCONTROLFILE;备份时同时备份

RMAN>BACKUPDATAFILE1;备份SYSTEM表空间也会触发控制文件自动备份

RMAN>CONFIGURECONTROLFILEAUTOBACKUPON;设置参数自动备份

RMAN>LISTBACKUPOFCONTROLFILE;查看备份的控制文件

·归档文件的备份

RMAN>BACKUPARCHIVELOGALL;

Tip:

ALL是指备份当前所有可以访问到的归档文件,还可以通过UNTIL、SCN、TIME、SEQUENCE等参数灵活制定要备份的归档区间。

RMAN>BACKUPCURRENTCONTROLFILEPLUSARCHIVELOG;

Tip:

PLUSARCHIVELOG命令是将数据库的重做日志文件文件进行归档后在备份归档,这种模式备份的归档日志文件是完整的。

备份之后就可以删除归档日志文件,或者在BACKUP之后指定DELETEALLINPUT参数,进行自动删除归档目录中已经备份的归档日志。

RMAN>LISTBACKUPOFARCHIVELOGALL;

·初始化参数文件的备份

RMAN>BACKUPSPFILE;

·对备份集进行备份

RMAN>BACKUPBACKUPSETALL;备份所有备份集

RMAN>BACKUPBACKUPSETn;备份指定备份集

Tip:

也可以指定DELETEALLINPUT参数。

二RMAN命令总列

1、显示RMAN默认配置—SHOW命令

RMAN>SHOWALL;

Tip:

配置项后面加了#default的表示该项为初始配置,未被修改过。

2、列出备份信息–LIST命令

RMAN>LISTBACKUP;

RMAN>LISTDEVICETYPEDISKBACKUP;列出某个设备上的所有信息。

RMAN>LISTEXPIREDBACKUP;列出所有无效备份。

3、删除备份---DELETE命令

删除RMAN备份记录以及相应的物理文件。

·删除过期备份。

RMAN会根据备份冗余策略确定备份是否过期。

RMAN>DELETEOBSOLETE;

·删除无效备份。

首先执行CROSSCHECK命令核对备份集,如果发现备份对应的数据文件损坏或丢失,RMAN将对该备份集标记为EXPIRED。

RMAN>DELETEEXIOREDBACKUP;

·删除EXPIRED副本。

RMAN>DELETEEXPIREDCOPY;

·删除指定备份集。

RMAN>DELETEBACKUPSET19;

·删除所有备份集。

RMAN>DELETEBACKUP;

·删除制定映像副本。

RMAN>DELETEDATAFILECOPY‘D:

\BACKUP\DEMo_19.bak’;

·删除所有映像副本。

RMAN>DELECTCOPY;

·在备份后删除输入对象。

RMAN>BACKUPARCHIVEALLDELETEINPUT;

4、报表显示–REPORT命令

分析当前的备份信息。

·查看7天前数据库的模式

RMAN>REPORTSCHEMAATTIME‘SYSDATE-7’;

Tip:

使用SCHEMA关键字可以查看数据库的模式信息,比如某个时间段的数据库结构,不过,前提是必须有足够的备份。

·查看所有需要备份的文件。

RMAN>REPORTNEEDBACKUP;

·查看制定表空间是否需要备份

RMAN>REPORTNEEDBACKUPTABLESPACESYSTEM;

·查看过期备份

RMAN>REPORTOBSOLETE;

5、执行检查---CROSSCHECK命令

用来检查备份或归档物理文件的状态。

如果物理文件存在,并且控制文件或恢复目录中没有匹配记录,则标记为AVAILABLE。

如果文件已经不存在了则标记为EXPIRED。

·检查所有归档文件

RMAN>CROSSCHECKARCHIVELOGALL;

·检查所有备份集

RMAN>CROSSCHECKBACKUP;

6、修改状态----CHANGE命令

可以用来修改备份文件或归档文件在控制文件或恢复目录中的状态。

AVAILABLE或EXPIRED。

·修改指定备份集状态为UNAVAILABLE.

RMAN>CHANGEBACKUPSETnUNAVAILABLE;n为备份集序号

·修改制定表空间的备份集为UNAVAILABLE.

RMAN>CHANGEBACKUPOFTABLESPACEUSERSUNAVAILABLE;

·修改制定归档文件状态为UNAVAILABLE.

RMAN>CHANGEARCHIVELOGLOGSEQ=nUNAVAILABLE;

Tip:

n为归档日志文件序号,可通过listarchivelogall或查询V$ARCHIVED_LOG获取。

三RMAN备份进阶

Tip:

backup命令生成的备份集中只备份那些使用了的数据块。

1、是否选择增量备份

Tip:

虽然备份时间可会缩短,备份集大小可能减小。

但是进行恢复操作时,所需花费的时间会增加。

1.1增量备份选项

在执行BACKUP的时候制定一个参数:

INCERMETALLEVEL=n。

Tip:

所有增量备份都必须创建0级备份。

0级备份相当于数据库的完全备份。

RMAN>BACKUPINCREMENTALLEVEL=0DATABASE;创建增量0级备份。

RMAN>BACKUPINCREMENTALLEVEL=1DATAFILE‘F:

\ORAHOME1\ORADATA\USER01.DBF’;创建数据文件user01.dbf的级别1备份。

RMAN>BACKUPINCREMENTALLEVEL=1TABLESPACEUSERS;创建USERS表空间0级备份。

1.2增量备份类型

RMAN提供了两种:

DIFFERENTIAL(差异)和CUMULATIVE(累积)。

它们的实现算法不同,默认是DIFFERENTIAL。

RMAN>BACKUPINCREMENTALLEVEL=1CUMULATIVEDATABASE;

1.3增量备份注意事项

Tip:

10g中提供了:

块修改跟踪(BlockChangeTracking),直接通过块修改跟踪获取那些块发生修改信息。

SQL>ALTERDATABASEENABLEBLOCKCHANGETRACKINGUSINGFILE’LOACTION/TRK_FILENAME’;启动块修改跟踪。

SQL>ALTERDATABASEDISABLEBLOCKCHANGETRACKING;禁用块修改跟踪。

SQL>SELECTSTATUSFROMV$BLOCK_CHANGE_TRACKING;查询是否启动块修改跟踪。

2、是否使用RMAN备份集的保留策略

Tip:

RMAN提供了:

基于时间和基于冗余数量的备份保留策略。

2.1基于时间的备份保留策略

RMAN>CONFIGURERETENTIONPOLICYTORECOVERYWINDOWOFnDAYS;

保留那些将数据库恢复到n天前的状态时需要用到的备份。

Tip:

超过这个时间的备份将被标记为OBSOLETE。

Tip:

控制文件中的参数会影响基于时间的备份保留策略。

建议基于时间的备份保留策略应用时CONTROL_RECORD_KEEP_TIME初始化参数值不小于RMAN中设置的备份保留时间。

V$CONTROLFILE_RECORD_SECTION可查寻控制文件中的空间分配情况。

2.2基于冗余数量的备份保留策略

如果某个数据文件的冗余备份数量超出制定数量,RMAN将废气最旧的备份。

RMAN>CONFIGURERETENTIONPOLICYTOREDUNDANCYn;

2.3根据备份策略维护备份集

设置备份保留策略后,RMAN会自动判断那些备份集或镜像复制文件不比再保留,这些备份文件将被标记为废弃(OBSOLETE)。

3、是否使用多个通道

RMAN支持两种备份设备:

SBT(磁带)和DISK(磁盘,即所有带盘字的设备)。

3.1手工分配通道

RMAN>RUN{

ALLOCATECHANNELC1DEVICETYPEDISKFROMAT‘f:

\oracle\....’;

ALLOCATECHANNELC2DEVICETYPEDISKFROMAT‘f:

\oracle\....’;

ALLOCATECHANNELC3DEVICETYPEDISKFROMAT‘f:

\oracle\....’;

BACKUPTABLESPACEUSERS;

}

Tip:

ALLOCATECHANNELB必须在RUN块中。

使用多个通道的话,执行多条ALLOCATECHANNEL就可以了。

RELEASECHANNEL命令可以释放通道。

3.2自动分配通道

预定义配置命令可分配通道:

·CONFIGUREDEVICETYPEsbt/diskPARALLELISMn;

·CONFIGUREDEFAULEDEVICETYPETOsbt/disk;

·CONFIGURECHANNELDEVICETYPEsbt/diskFORMAT….;

·CONFIGURECHANNELnDEVICETYPEsbt/diskFORMAT….;

4、是否启动符合备份

·方法1:

RMAN>BACKUPCOYIES2DATABASEFORMAT‘D:

\BACKUP1\%U’,‘D:

\BACKUP2\%U’;

Tip:

如果不指定绿色字体的目录则会在同一目录下创建两份备份集。

·方法2

RMAN>RUN{

SETBACKUPCOPIES2;

BACKUPDEVICETYPEDISKFORMAT‘D:

\BACKUP1\%U’,‘D:

\BACKUP2\%U’

TABLESPACEUSERS;

}

Tip:

这样会在两个文件夹下创建USERS表空间的两个备份。

·方法3:

通过CONFIGURE….BACKUPCOPIES设置预定义的备份为Duplexed方式。

5、是否设置备份集属性

对于备份集或备份片段,RMAN直接提供了方式支持定义备份片段的文件名、备份片段大小及备份集标签。

5.1设置备份片段文件名

用FORMAT参数指定备份文件名称,默认值为%F。

5.2设置备份集标签

备份时可以直接给备份集指定一个名称,即TAG,默认的TAG格式为TAGyyyymmddThhmmss,蓝色为固定字符。

RMAN>BACKUPTABLESPACEUSERSTAGTBS_USERSBAK;

5.3设置备份片段/备份集大小

RMAN在分配通道时有一个参数MAXPIECESIZE,就是专门用来指定备份片段大小的。

Tip:

若备份片段超过指定大小,则扩展为第二个备份片段,但这些备份片段都属于一个备份集。

RMAN>RUN{

ALLOCATECHANNELC1DEVICETYPEDISKMAXPIECESIZE=10mFROMAT‘F:

\ORACLE\BACKUP\....’;

BACKUPTABLESPACESYSTEM;

}

也可以通过参数MAXSETSIZE指定备份集大小。

Tip:

如果要备份的数据文件中,任意一个数据文件超过指定参数值,则备份就会失败。

如果真的要限制生成文件大小则更多还是通过指定MAXPIIECESIZE参数限制。

6、是否使用RecoveryCatalog

RecoveryCatalog专门存储备份信息。

当待备份的数据库注册到恢复目录后,RMAN相关的备份信息除了保存在控制文件中外,更详细的信息都被存储在恢复目录中。

创建步骤:

(1)创建一个独立表空间

SQL>CREATETABLESPACERMANTBSDATAFILE‘F:

\ORACLE\ORADATA\BAKDB\RMATBS01.DBF’SIZE50m

Tip:

千万不要将恢复目录创建在要备份的目标数据库,恢复目录通常不会太大。

疑问:

使用catalog模式的时候是否要单独起一个备份用的数据库?

(2)创建一个独立的SCHEMA用来记录备份信息,并授予相关权限。

SQL>GRANTCONNECT,RESOURCE,RECOVER_CATALOG_OWNERTORMANCTINDENTIFIEDBYRMANCT;

(3)通过RMAN连接到新创建的恢复目录

F:

\oracle>RMANCATALOGRMANCT/RMANCT

(4)在RMAN中创建CATALOG

RMAN>CREATECATALOGTABLESPACERMANTBS;

(5)注册数据库

F:

\oracle>RMANTARGET/CATALOGRMANCT/RMANCT@BAKDB

Tip:

要使用catalog模式,一定要以catalog模式连接.

RMAN>REGISTERDATABASE;注册数据库

RMAN>UNREGISTERDATABASE;注销数据库

Tip:

如果DBA管理的数据库很多,则建议用catalog模式管理。

如果仅仅管理一个或少数数据库则NOCATALOG更加方便。

 

7、是否启用备份优化

前提条件:

·CONFIGUREBACKUPOPTIMIZATION参数设置为ON.

·执行BACKUPDATABASE或BACKUPARCHIVELOG命令中带有ALL或LIKE参数。

·分配的通道仅使用了一种设备类型,也就是不能同时分配使用SBT与DISK的多个通道。

Tip:

理论上备份优化仅对制度表空间或offline表空间起作用。

对于已经备份过的ARCHIVELOG文件,它也会跳过。

8、是否对备份集进行压缩

10g中RMAN新增的一个ASCOMPRESSEDBACKUPSET来进行备份集压缩。

RMAN>BACKUPASCOMPRESSEDBACKUPSETTABLESPACESYSTEM;

Tip:

压缩可以节存储空间,但是会降低备份和恢复的速度。

9、是否启用加密备份

10gR2之后RMAN可以对备份集进行加密,但是RMAN中创建的镜像复制不支持加密。

启用加密后,创建的备份集在恢复的时候也需要密钥才能进行恢复。

RMAN>CINFUGUREENCRYPTIONFORDATABASEON;启动备份加密

RMAN>CINFUGUREENCRYPTIONFORDATABASEOFF;禁用备份加密

RMAN>CINFUGUREENCRYPTIONFORTABLESPACEUSERSON;对表空间启动加密

Tip:

之后再执行备份命令创建的备份集就是加密备份集。

前提是数据库端已经配置好了OracleEncryptionWallet。

RMAN>SETENCRYPTIONONIDENTIFIEDBYenbackONLY;会话级设置enback密码。

四实战RMAN备份

1、备份目标

·每天夜间1点执行。

•数据库全备,同时备份控制文件及归档日志文件,备份文件保存至‘F:

\ORACLE\BACKUP\’目录下,并且在完成归档日志文件备份后,自动删除已备份的归档日志。

·备份保留14天,过期自动删除。

·保留操作日志备查。

2、批处理文件

RUN{

CONFIGURERETENTIONPOLICYWINDOWOF14DAYS;

CONFIGURECONTROLFILEAUTOBACKUPON;

CONFIGURECONTROLFILEAUTOBACKUPFORMATFORDEVICETYPEDISKTO‘F:

\ORACLE\BACKUP\%F’;

ALLOCATECHANNELC1DEVICETYPEDISKFORMAT‘F:

\ORACLE\BACKUP\BAK_%U’;

BACKUPDATABASESKIPINACCESSIBLE

PLUSARCHIVELOGFILESPERSET20

DELETEALLINPUT;

RELEASECHANNELC1;

}

ALLOCATECHANNELFORMAINTENANCEDEVICETYPEDISK;

CROSSCHECKBACKUPSET;

DELETENOPROMPTOBSOLETE;

保存为DB_FULLBACK.RMAN

参数说明:

(1)BACKUP….SKIP参数

·SKIPINACCESSIBLE表示跳过不可读的文件。

OFFLINE状态的数据文件只要存在磁盘上就仍然可被读取,但是可能有些文件已经被删除或移动到其他地方而不可读。

·SKIPOFFLINE表示跳过OFFLINE的数据文件;

·SKIPREADONLY表示跳过那些所在表空间为READONLY的数据文件。

(2)FILESPERSET参数

设置一个备份集中最多能包含的文件。

本例中FILESPERSET20设置在归档文件中,说明归档文件数量超过20,则另外生成备份集。

(3)ALLOCATECHANNELFORMAINTENANCE命令

用来分配通道,但是分配的通道专用于CHANGE、DELETE、CROSSCHECK命令,并且不需要放在RUN块中。

默认CONFIGURE已经分配了一个指定的DISK通道,不建议单独使用ALLOCATECHANNELFORMAINTENANCE。

3、编写批处理命令

SETORACLE_SID=xxxxx

RMANTARGET/LOGF:

\ORACLE\SCRPIRT\BACKUP\LOGES\BAK_%DATE:

~0,10%.LOGCMDFILE=F:

\ORACLE\SCRPIRT\BACKUP\DB_FULLBACK.RMAN

将上述内容保存至F:

\ORACLE\SCRPIRT\BACKUP\DB_FULLBACK.bat

五CONFIGURE命令说明

如果想把某条更改过的配置再设置为默认配置可以用CONFIGURE….CLEAR。

1.CONFIGURERETENTIONPOLICY配置备份保留策略。

(1)基于时间的备份保留策略

RMAN>CONFIGURERETENTIONPOLICYTORECOVERYWINDOWOFnDAYSL;

(2)基于冗余数量的保留策略

RMAN>CONFIGURERETENTIONPOLICYTOREDUNDANCYn;

(3)取消备份保留策略

RMAN>CONFIGURERETENTIONPOLICYTONONE;

2.CONFIGUREBACKUPOPTIMIZATION配置备份优化

(1)打开备份优化:

RMAN>CONFIGUREBACKUPOPTIMIZATIONON;

(2)关闭备份优化:

RMAN>CONFIGUREBACKUPOPTIMIZATIONOFF;

3.CONFIGUREDEFAULTDEVICETYPE配置I/O设备类型

RMAN支持的IO设备有两种:

磁盘(DISK)和磁带(SBT),默认情况下是DISK。

(1)磁盘

RMAN>CONFIGUREDEFAULTDEVICETYPETODISK;

(2)磁带

RMAN>CONFIGUREDEFAULTDEVICETYPETOSBT;

Tip:

如果IO设备发生变化,相关的配置也要修改。

如磁盘并行度:

RMAN>CONFIGUREDEVICETYPEDISKPARALLELISM2;

4.CONFIGURECONTROLFILEAUTOBACKUP配置控制文件自动备份

(1)打开自动备份

RMAN>CONFIGURECONTROLFILEATUOBACKUPIN;

(2)关闭自动备份

RMAN>CONFIGURECONTROLFILEAUTOBACKUPOFF;

(3)指定自动备份的格式和路径

RMAN>CONFIGURECONTROLFILEAUTOBACKUPFROMATDEVICETYPEDISK‘F:

\ORACLE\BACKUP\…….ORA’;

(4)备份期间产生一个控制文件快照

RMAN>CONFIGURESNAPSHOTCONTROLFILENAMETO‘F:

\……’;

5.CONFIGUREDEVICETYPE设置并行备份和恢复

RMAN>CONFIGUREDEVICETYPEDISK

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1