10月11日RMAN概论

本帖最后由 fm98888 于 2020-10-12 00:00 编辑

一、RMAN介绍
   1)定义:是orcale开发出来的一种客户端工具,通过锁定8k数据块,在物理层面上进行数据复份,有效的规避块分离的现象,大大降低了redo的需求,提高系统性能;
   2)功能介绍
1、备份数据文件、归档日志、控制文件、spfile
2、自动维护备份相关的元数据,例如备份文件的名称、完成备份的SCN
3、以数据块为单位进行备份,只备份使用过的数据块
   备份高水位线下的数据块,因此相对于原数据,体积很更小
4、对备份出来的文件进行压缩
5、自动检测数据块是否损坏
6、支持增量备份
7RMAN只是对数据文件的数据块进行备份,而不是对文件进行备份;
   3)备份路径
   有开闪回区功能 --/u01/app/oracle/fast_recovery_area/SID/backupset/2020_10_01/
   没有闪回区功能--$ORACLE_HOME/dbs
      上面两种是RMAN默认备份路径
   指定备份路径--backup database format '/home/oracle/back/EXAMPL';
      通过 format 指定备份路径和名称
4)备份命名规则
  名称+%d_%t_%s_%p
   如果不加上这此自动命名符号,备份时有可能会报错,因为在备份完数据库,RMAN会自动去备份控制文件和参数文件,也是以原来的备份命去备份,但是RMAN不允许覆盖,确定要使用该备份名称,直接rm -rf 原文件既可解决(数据量小的时候,不会引发自动备份控制文件和参数文件)
  5)控制文件作用
       1.记录数据库的结构信息
       2.记录检查点SCN
       3.redo的使用情况 当前redo是谁 记录了哪些scn
       4.归档信息
       5.RMAN备份相关的元数据--这点非常重要,恢复的时候需要使用这些元数据,
一但控制文件破损,无法进行恢复,所以RMAN在备份完成后,会自动再备份控制文件;
       注:①控制文件和参数文件的备份集一般都很小大概在10m左右,在做恢复操作的时候很好找;②控制文件保存数据元信息一般是7天,如果设置0就是不限制会无限扩大内容;
6)连接方式
  RMANsqlplus 一样都是oracle开发出来的客户端工具,所以连接方式一样,它也可以执行一些sql语句:如开库、关库、变更设置
  命令格式:rman target   目标数据库字符连接串   [catalog  目录数据库连接串
1)本地连接
  rman target  /
--以syse用户连接数据库;
--可以执行SQL命令
2)网络连接
  rman target  user_name/passwd@IP : Port
    --需要静态监听
   注:catalog 是指向恢复目录库,11g很少使用,因为可以直接使用cp命令;
7DBID作用
   作用:dbidoracle数据库内部使用的编号。是由oracel使用db_name进行计算获得的一串数字,具有唯一性,一般用到主从库上;
[oracle@oracle ~]$ rman target /
connected to target database: ORCL1 (DBID=1436359365)
(8)三种备份方式
1)备份集
              backup 数据库
2)镜像备份
              backup 数据库 as copy
3)增量备份
(9)开启并发功能
1)修改并发参数--开启并发功能
CONFIGURE DEVICE TYPE DISK PARALLELISM 3 BACKUP TYPE TO BACKUPSET;
2)执行并发语句
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup  database format '/home/oracle/back/full_%d_%T_%s_%p';
}
也可以对备份片设置大小,手工指定或者修RMAN参数

backup  database section size=100m format '/home/oracle/back/full_%d_%T_%s_%p';

3)并发备份就是多个备份通道同时进行备份操作,它会自动根据备份对象的数据量分配给不同的通道进行备份,并产生该通道自己的备份集;数据文件数量必须大于或等于通道,否则系统会自动报错;
4)在生产环境中不是通道越多越好,一般只开35
      10)备份集、备份片、通道和数据文件四者间的关系
          1)备份集是逻辑概念,是所以备份片的集合;
          2)备份片是物理概念,存储对应数据文件的数据块信息(操作系统层面)
          3)一个数据文件或者多个文件可以对应一个或者多个通道;--并发操作
          4)一个通过可以对应一个或者多个备份集,而一个备份集是能对应一个通过;
          5)一个备份集可以对应多个备份片,一个备份片只能对应一个备份集
   注:①文件数必须大于等于通道数;②备份进修可以多通过,恢复只能用单通道;
11)备份通道分为两种类型
           磁盘通道-读写速度快,性能稳定,但是保存时间短10年-DBA维护
           磁带通道-读写速度慢,性能差,但是保存时间长-厂家或磁带管理员维护
(12)RMAN命令行分类
1)独行语句
2)run模块语句
(13)RMAN参数--show all
          1)概念
          RMAN参数存放在两个地方:控制文件(自定义)和RMAN命令里(系统默认);
          当数据库异常,用RMAN命令里的;当数据库正常,用控制文件的自定义参数;
          2)设置
          直接在RMAN命令里执行修改的参数信息即可,可以通过show all命令显示所有参数信息。
       RMAN> CONFIGURE DEVICE TYPE DISK PARALLELISM 3  BACKUP TYPE TO BACKUPSET;
old RMAN configuration parameters:
CONFIGURE DEVICE TYPE DISK PARALLELISM 3 BACKUP TYPE TO BACKUPSET;
new RMAN configuration parameters:
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET;
new RMAN configuration parameters are successfully stored
     3)参数介绍(重点掌握冗余策略和并发数就可以了,其他不用去改)
a)冗余备份策略:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
                 保留一份备份集
configure retention policy to recovery window of 3 days;
                 保留近3 天备份集
b)备份优化
CONFIGURE BACKUP OPTIMIZATION OFF; # default
为增量备份提供追踪信息的,开启会自动检查哪此是已经备份过的,默认关闭
c)备份的介质类型
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
有两种:DISK(磁盘) 和 SBT_DISK(磁带)
d)控制文件是否自动备份和自定义存储路径
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
正常情况下,RMAN会根据备份情况,自已决定是否备份控制文件
e)设置并发数量
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET;
f)设置数据文件和归档日志文件备份的份数
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
g)设置备份片大小
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
h)设置是否加密及加密码方式
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
i) 是否对备份集进行压缩
      CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
      j)归档删除策略
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE;
手动删除上一次全备之前产生的归档
delete noprompt expired archivelog all;
      k)控制文件的快照备份
      CONFIGURE SNAPSHOT CONTROLFILE NAME TO
'/u01/app/oracle/product/11.2/db_2/dbs/snapcf_orcl1.f'; # default
直接CP到对应的控制文件位置 就可以当作控制文件使用 本质就是控制文件的二进制备份
RMAN提供了多种自动备份控制文件方式,说是控制文件对它是非常重要,如果控制文件全部坏了,也就没有办法提供介质恢复;
14)增量备份
所谓增量备份,就是只对那些自从上一次备份以来,发生变化的数据块进行备份。
1)首先必须要有一个基本备份,包含所有使用过的数据块的备份 0级备份
2)基本备份就是级别0level=0)的备份,以后所有的增量备份都是基于这个基本备份完成的
3)如果RMAN进行增量备份时,发现没有可以参照的基本备份,RMAN会自动的进行0级备份,忽略我们指定的增量级别备份
4)增量备份级别包括12345一共五个级别,0作为基本级别
增量备份分为:
差异增量备份:寻找小于等于当前备份级别的备份级进行备份 0 2 2 1
  案例:
  0级  全备
  2级  基于0的增备
  2级  基于上次2级的增备
  1级  基于0的增备

累计增量备份:寻找小于当前备份级别的备份级进行备份  0 2 2 1
  案例:
  0级  全备
  2级  基于0的增备
  2级  基于0级的增备
  1级  基于0的增备
15)备份策略
1)备份时长决定备份时间点:正常备份时间段是晚上10点到次日6点,根据备份时长决定什么时间点进行备份,前提是不影响业务;
2)全文件损坏时长决定备份周期:如果全库恢复需要3天的话,一般3天就要一次全备;
案例1
3天对数据库进行一次备份
1.3天对数据库的进行全备 23:00备份数据库
2.每天对归档进行备份 每天21:00备份归档
         注:
对于归档的处理也是很重要的
每天数据量增长1G  产生多少G的归档 远多于1G
对于归档 不能够直接删除 处理归档最好的方式 就是将归档进行备份RMAN备份完归档会自动删除归档文件
案例2
单次全备时长 2H    --》只要在早上6点前完成即可
             6H    --》只要在早上6点前完成即可
             10H   --》放充全备,使用增备
         备份时长可以通过脚本生成的日志文件去看
(16)恢复  
1)restore
            读取备份文件里的数据块,根据数据块所属的数据文件,将这些数据块放回到相应的数据文件里面去,从而完成还原工作;
2recover
       用归档日志文件和redo应用到还原出来的数据文件,从而把数据库从备份的时间点恢复到最新的或者指定的时间点。

标签: 暂无标签
fm98888

写了 26 篇文章,拥有财富 100,被 0 人关注

转播转播 分享分享 分享聚知识
回复

使用道具

成为第一个吐槽的人

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈