1. 首页
  2. IT资讯

RMAN前奏

SQL> select * from v$version where rownum=1;
BANNER
——————————————————————————–
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – Production
SQL> !cat /etc/issue
Enterprise Linux Enterprise Linux Server release 5.5 (Carthage)
Kernel r on an m

RMAN的重要性,不必在这里过多的阐述,作为DBA,没有理由不掌握这一技能。
读者可以参考官网:http://docs.oracle.com/cd/E11882_01/backup.112/e10643/rcmsynta2011.htm#RCMRF111

下面是官方文档简单的介绍:

RMAN
Purpose

Use the RMAN command to start RMAN from the operating system command line.

RMAN connections to a database are specified and authenticated in the same way as SQL*Plus connections to a database. The only difference is that RMAN connections to a target or auxiliary database require the SYSDBA privilege. The AS SYSDBA keywords are implied and cannot be explicitly specified. See Oracle Database Administrator’s Guide to learn about database connection options when using SQL*Plus.r’s Guide to learn how to start RMAN from the command line

Prerequisites

You must issue the RMAN command and any options at the operating system command line rather than at the RMAN prompt.

Usage Notes

The command name that you enter at the operating system prompt is operating system-dependent. For example, enter rman in lowercase on Linux and UNIX systems.

If you start RMAN without specifying either CATALOG or NOCATALOG on the operating system command line, then the RMAN session is effectively inNOCATALOG mode unless you execute a CONNECT CATALOG command (see Example 3-32). If you maintain a recovery catalog, then the best practice is to connect RMAN to the recovery catalog before performing RMAN operations.

Syntax(语法)

cmdLine::=

RMAN前奏

由于版面的原因,读者可以参考文档。
大致罗列RMAN的优点如下:
1.支持增量备份:传统的备份工具如exp或者expdp,都是完整备份,但是没有不支持增量备份,但是RMAN可以根据备份级别实现增量备份,与传统的备份相比,这种备份方式,会减少备份的数据量。
2.自动管理备份文件:RMAN备份的数据是RMAN自动管理的,包括文件名字,备份文件存储目录,以及识别最近的备份文件,搜索恢复时需要的表空间,模式或数据文件等备份文件。
3.自动化备份与恢复:在备份和恢复操作时,使用简单的指令就可以实现备份与恢复,且执行过程完全由RMAN自动维护。
4.不产生重做信息:与用户管理的联机备份不同,使用RMAN的联机备份不产生重做信息。
5.恢复目录:RMAN的自动化备份与恢复功能应该归功于恢复目录的使用,RMAN直接在其中保存了备份和恢复脚本。
6.支持映象复制:使用RMAN也可以实现映象复制,映象复制是以os上的文件格式存在,这种复制方式类似于用户管理的脱机备份的方式。
7.新块的比较特性:这是RMAN支持增量备份的基础,这种使得在备份时,跳过数据文件中从未使用过的数据块的备份,备份数据量的减少直接导致备份存储空间需求和备份时间的减少。
8.备份的数据文件压缩处理:RMAN提供一个参数,说明是否对备份文件进行压缩,压缩的备份文件以二进制文件格式存在,可以减少备份文件的存储空间。
9.备份文件有效性检查功能:这种功能验证备份的文件是否可用,在恢复前往往需要验证备份文件的有效性。

RMAN工具使用会话建立客户端到数据库服务器的连接,用户首先需要启动RMAN可执行程序,然后建立客户端与服务器端的会话连接,用户通过RMAN的客户端进行RMAN操作,执行备份和恢复指令,这些指令在服务器端的服务器进程中执行,而服务器进程完成实际的磁盘读写操作。下面简单的介绍RMAN的系统结构组成:

RMAN可执行程序:它是一个客户端工具,用来启动与数据库服务器的连接,从而实现备份与恢复的各种操作。
RMAN客户端:一旦建立了与数据库服务器的会话连接,RMAN可执行程序就创建一个客户端,通过客户端完成与数据库服务器之间的通信,完成各种备份与恢复操作的指令,RMAN客户端可以连接通过ORACLE NET访问任何主机。
服务器进程:在RMAN建立了与数据库服务器的会话连接后,在数据库服务器端启动一个后台进程,它执行RMAN客户端发出的各种数据恢复与备份指令,并完成实际的磁盘或者磁带设备的读写任务。
RMAN信息库:RMAN信息库记录了RMAN的一些信息,如备份的数据文件以及副本的目录,归档的重做日志备份文件和目录,表空间和数据文件以及备份或恢复的脚本和RMAN的配置信息。默认使用数据库服务器的控制文件记录这些信息,读者可以通过转储的控制文件发现这些信息(如alter database backup control file to trace)
恢复目录:记录RMAN信息库的信息。但是恢复目录需要提前配置,信息库既可以存储在数据库的控制文件中,也可以存储在恢复目录中。在oracle中默认先将RMAN信息库写入控制文件,如果存在恢复目录则需要继续写到恢复目录。使用控制文件的不足之处是控制文件中记录的RMAN信息库的空间有限,当空间不足时可能会被覆盖掉。所以oracle建议使用创建单独的恢复目录,这样也可以更好地发挥RMAN提供的新特性。
RMAN前奏
下面简介说明下Flash recovery area(快闪恢复区)
快闪恢复区是存储和恢复数据文件以及相关信息的存储区。快闪恢复区保存了每个数据文件的备份,增量备份以及归档重做日志备份,oracle也允许在快闪恢复区中保存联机重做日志的冗余副本以及当前控制文件的冗余副本,还有oracle中闪回特性中的闪回日志也保存在快闪恢复区中。
使用RMAN实现数据库的备份与恢复时,配置的快闪恢复区就是RMAN存储所有与备份相关的文件存储区,而此时的文件名不需要用户干预,oracle使用OMF创建备份文件的文件名,文件名称格式可以指定。
使用快闪恢复区的优点是,实现了备份文件的自动管理,是的备份与恢复数据库指令简介恢复简单,并且可以集中管理磁盘空间。要求恢复区的空间足够大,以容纳备份的数据。
在快闪恢复区需要设置两个动态参数:
SQL> show parameter db_recovery_file

NAME                                 TYPE        VALUE
———————————— ———– ——————————
db_recovery_file_dest                string      /u01/app/oracle/flash_recovery
                                                 _area
db_recovery_file_dest_size           big integer 3852M

前者是设置快闪恢复区在os磁盘空间的位置,后者是快闪恢复区的最大容量。
可以通过pfile或者用用命令alter system 来设置它们。我们备份的整个数据库,以及控制文件都保存在该快闪恢复区中,该区域中的文件由oracle自动维护,一旦需要恢复数据库时,只需要简单的指令
就可以恢复数据库,RMAN会自动寻找存储在快闪恢复区中的备份文件完成恢复。(快闪恢复区的参数可以动态修改,如可以在数据库运行期间更改快闪恢复区的大小,以及改变快闪恢复区在磁盘上的存储目录)

SQL> alter system set db_recovery_file_dest_size=4000M;

系统已更改。

如果不需要快闪恢复区可以将参数db_recovery_file_dest  设置成空格,使得快闪恢复区不存在存储目录。

我们可以通过数据字典v$recover_file_dest来查看快闪恢复区大的空间使用情况及文件数量:

SQL> select name,space_limit,space_used from v$recovery_file_dest;

NAME                                                                             SPACE_LIMIT SPACE_USED
——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— ———– ———-
/u01/app/oracle/flash_recovery_area                                               4194304000  758131712

快闪恢复区空间不足的问题解决方法
1.增加恢复磁盘空间,需要考虑到当前磁盘的大小限制:
SQL> alter system set db_recovery_file_dest_size=5g;

系统已更改。

2.删除没有的备份文件或者将备份文件复制到磁带设备:
使用crosscheck 和delete obsolete指令删除不需要的文件。或者使用delete expired 指令删除那些不需要的备份文件。或者使用RMAN的backup recoveryarea指令将恢复区中的文件复制到磁带上。

3.删除当前的恢复区,重新设置新的快闪恢复区:
SQL> ALTER SYSTEM SET db_recovery_file_dest =’/home/oracle’;

系统已更改。

当向快闪恢复区添加新文件时,oracle会自动更新新文件列表,发现符合删除的备份文件,这些文件包括不符合保留策略的文件,复制到磁带的过渡文件,而重做日志文件可控制文件任何时候都不会被删除。

使用v$flash_recovery_area_usage来查看闪回恢复区空间使用情况:

SQL> select * from v$flash_recovery_area_usage ;

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
——————– —————— ————————- —————
CONTROL FILE                          0                         0              0
REDO LOG                              0                         0              0
ARCHIVED LOG                      18.08                         0              30
BACKUP PIECE                          0                         0              0
IMAGE COPY                            0                         0              0
FLASHBACK LOG                         0                         0              0
FOREIGN ARCHIVED LOG                  0                         0              0
已选择7行。
从上看出闪回恢复区中保存的文件类型有控制文件,归档日志文件,在线日志文件,备份片,影像备份文件,以及闪回日志(和闪回相关的记录)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29876893/viewspace-1702034/,如需转载,请注明出处,否则将追究法律责任。

主题测试文章,只做测试使用。发布者:℅傍ㄖ免沦陷dε鬼,转转请注明出处:http://www.cxybcw.com/191875.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code