Oracle(2-11)RMAN Backups

文章目录

  • 一、基础知识
    • 1、RMAN Backup Concepts RMAN备份概念
    • 2、RMAN Backup Modes RMAN备份的类型
    • 3、Backup File Types 备份文件类型
    • 4、RMAN Backup Destinations RMAN备份目标
    • 5、Backup Constraints 备份约束
    • 6、Recovery Manager Backups 恢复管理器备份
    • 7、Characteristics of BS BS的特点
    • 8、Backup Piece 备份片
    • 9、Backup Issues 备份问题
    • 10、Control File and SP File 控制文件和SP文件
    • 11、Backing Up the SP File 备份SP文件
    • 12、Archived Redo Log Back Sets 归档重做日志的备份集
    • 13、Backup Database Plus Archivelog 备份数据库和归档日志
    • 14、Duplexed Backup Sets 双重备份集
    • 15、Characteristics of lmage Copy 镜像拷贝特性
    • 16、Making Incremental Backups 进行增量备份
    • 17、Monitoring RMAN Backups 监控RMAN备份
  • 二、基础操作
    • 1、完整备份数据库
    • 2、查看数据库结构并指定数据文件备份
    • 3、备份控制文件的方法
      • 方法1.修改RMAN参数
      • 方法2.直接使用命令备份
      • 方法3.在备份其他文件的时候使用子句备份
      • 方法4.修改控制文件数据
    • 4、备份spfile文件
      • 方法1.在RMAN中执行命令
      • 方法2.修改RMAN参数
    • 5、备份归档日志文件
      • 方法1.使用命令备份
      • 方法2.在备份其他文件是附加备份
    • 6、并发备份数据库的实现
      • 方法1.使用命令实现多通道并发备份
      • 方法2.修改参数实现多通道并发
    • 7、双重备份的实现
      • 方法1.RMAN命令实现
      • 方法2.修改RMAN参数
    • 8、镜像拷贝实现
    • 9、增量备份
      • 做0级备份
      • 做1级备份
      • 累积性差量备份
      • 总结
    • 10、自定义标签

在这里插入图片描述

RMAN Backups RMAN 备份
目标:

  • 了解RMAN特定备份的类型
  • 使用RMANBACKUP命令创建备份集
  • 备份控制文件
  • 备份存档的重做日志文件
  • 使用RMAN copy命令创建映像副本

一、基础知识

1、RMAN Backup Concepts RMAN备份概念

  • 恢复管理器备份是服务器管理的备份
  • 恢复管理器使用Oracle服务器会话备份操作
  • 可以备份整个数据库、表空间中的所有数据文件、选定的数据文件、控制文件、存档的重做日志文件
  • 封闭式数据库备份(冷备份)
    • 必须装入目标数据库(未打开)
    • 包括数据文件、控制文件、归档重做日志文件
  • 开放式数据库备份(缺点)
    • 不应将表空间置于备份模式
    • 包括数据文件、控制文件、归档重做日志文件

2、RMAN Backup Modes RMAN备份的类型

  • 完全备份与增量备份:完全备份是数据文件的备份,其中包括该文件中的每个已分配块。请注意,数据文件的映像副本备份将始终包括该文件中的每个块。但是,将数据文件备份为备份集时,可能会跳过未使用的数据块。增量备份可以是两个不同级别中的一个:0级备份包括数据文件中的所有块(因从未使用而被压缩的块除外) ,或1级备份仅包括自父备份以来更改过的块。
  • 一致性与不一致性备份:在数据库完全正常关闭 (与使用shutdownabort命令或在数据库突然崩溃后关闭相反)并在装入状态下重新启动后进行的备份称为一致性备份。在还原数据库后,一致备份不需要恢复。在数据库联机时或在数据库突然关闭后进入装入状态后执行的备份称为不一致备份。不一致的备份始终需要恢复以使备份一致。

3、Backup File Types 备份文件类型

  • Tablespaces 表空间
  • Datafiles (current or copy) 数据文件 (当前或副本)
  • Control file (current or copy) 控制文件 (当前或副本)
  • Spfiles
  • Archived logs 归档日志文件
  • Backup sets 备份集

4、RMAN Backup Destinations RMAN备份目标

  • 任何磁盘目录,包括自动存储管理 (ASM)磁盘组。
  • 一个介质管理库 (磁带设备)。
  • 闪存恢复区域,这是Oracle基于磁盘的备份和恢复策略的核心。闪回恢复区是一个完全保留的磁盘区域,用于备份和恢复,以及存储闪回日志,闪回日志用于支持闪回数据库特性。

5、Backup Constraints 备份约束

  • 必须置数据库于mount或open状态。
  • 不支持联机重做日志备份。
  • 只有“干净”备份可用于NOARCHIVELOG模式。
  • 只有当前的数据文件备份可以在ARCHIVELOG模式下使用。

6、Recovery Manager Backups 恢复管理器备份

在这里插入图片描述

7、Characteristics of BS BS的特点

  • BACKUP命令创建备份集
  • 备份集通常包含多个文件
  • 备份集可以写入磁盘或磁带
  • 需要执行还原操作才能从备份集中提取文件
  • 数据文件备份集可以是增量备份集,也可以是完全备份集
  • 备份集不包括从未使用过的块

8、Backup Piece 备份片

  • 备份片段是备份集中的文件
  • 备份片段可以包含来自多个数据文件的块
    在这里插入图片描述
  • Backup Piece Size 备份片的大小
  • 备份片大小可以限制如下:
RUN {
	ALLOCATE CHANNEL t1 TYPE 'SBT' 
	MAXPIECESIZE = 4G;
	BACKUP
		FORMAT 'df_ %t_%s_%p' FILESPERSET 3
		(tablespace users); }

9、Backup Issues 备份问题

  • Backup datafiles
  • Backup tablespaces
  • Backup the control file
  • Backup the server parameter file
  • Backup the archived log files

10、Control File and SP File 控制文件和SP文件

  • 使用CONFIGURE CONTROLFILE AUTOBACKUP命令来启用
  • 当启用时,RMAN在BACKUP或COPY命令后自动执行控制文件和当前服务器参数文件的备份
  • 对数据库进行结构性更改后也会进行备份
  • 备份具有默认名称

11、Backing Up the SP File 备份SP文件

  • 配置时自动备份 CONTROLFILE AUTOBACK = ON
  • 使用BACKUPSPFILE显式备份:
    • BACKUP COPIES 2 DEVICE TYPE sbt SPFILE;

12、Archived Redo Log Back Sets 归档重做日志的备份集

  • 仅包括归档的重做日志文件
  • 始终是完整备份:
BACKUP 
FORMAT '/u01/app/oracle/backup/ar_%t_%s_%p'
ARCHIVELOG ALL DELETE ALL INPUT;
  • 联机重做日志文件切换是自动的
  • 执行归档日志故障转移
  • 备份需要备份的归档日志

13、Backup Database Plus Archivelog 备份数据库和归档日志

  • 在我们备份归档日志的时候,我们的数据库干了如下的事情

1.运行alter system archive log current 命令
2.运行 backup archivelog all 命令
3.备份backup database命令指定的其余数据文件
4.运行 alter system archive log current命令
5.备份备份操作期间生成的新归档日志

14、Duplexed Backup Sets 双重备份集

在这里插入图片描述

15、Characteristics of lmage Copy 镜像拷贝特性

  • 只能写入磁盘
  • 可立即用于恢复;不需要恢复
  • 是单个数据文件、归档日志或控制文件的物理副本
  • 镜像是操作系统备份 (包含所有块)
  • 可以是增量策略的一部分

16、Making Incremental Backups 进行增量备份

  • 完整备份包含所有数据文件块
  • 差异增量备份仅包含级别n或更低的修改块
  • 累积增量备份仅包含级别n-1或更低的已修改块
  • 在这里插入图片描述
  • 增量备份分为0-4五个级别
  • 0级备份相当于全备

17、Monitoring RMAN Backups 监控RMAN备份

  • 使用SET COMMAND ID命令将服务器会话与通道关联起来
  • 查询V$PROCESS和V%SESSION,以确定哪些会话对应于哪些RMAN信道。
  • 查询V&SESSION_LONGOPS 来监视备份和副本的进度。
  • 使用操作系统实用程序监视进程或线程

二、基础操作

1、完整备份数据库

进入RMAN

rman target sys/123@orcl nocatalog

开始备份

格式:
backup database format 要备份的地址目录/md_%U

backup database format '/u01/app/oracle/backup/md_%U';

在这里插入图片描述

注意这里的备份命令只是备份了数据库,没有备份归档日志文件
正常做全备我们还需要备份归档日志文件,经常使用以下命令:

backup database plus archivelog format '/u01/app/oracle/backup/db_%U'; 

在这里插入图片描述

进入到备份目录下查看备份文件(这里做的是没有备份归档日志那个命令的展示效果,如果是使用备份归档日志文件的命令,文件名会以db开头)
在这里插入图片描述
查看备份记录

 list backup;

在这里插入图片描述
删除备份

# 删除所有备份
DELETE BACKUP;

删除指定片的备份

格式:delete backupset 片号(也就是list backup查询记录最前边显示的BS值)

delete backupset 1,2;

2、查看数据库结构并指定数据文件备份

report schema;

在这里插入图片描述
我们可以查看到当前数据库结构如图所示
然后我们对其中任何一个都可以进行单独备份

backup datafile 4 format '/u01/app/oracle/backup/md_%U';

这里的4就是上面我们查看数据库结构文件序号,如果将这里的4换成文件路径也是可行的

backup datafile '/u01/app/oracle/oradata/orcl/users01.dbf' format '/u01/app/oracle/backup/md_%U';

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、备份控制文件的方法

方法1.修改RMAN参数

show all;

在这里插入图片描述
默认是关闭,我们需要打开就行了

CONFIGURE CONTROLFILE AUTOBACKUP ON;

在这里插入图片描述
这样在每次备份的时候都会对参数文件进行备份

方法2.直接使用命令备份

这里有两种方法,一种是用cp命令拷贝控制文件,这种没什么说的
第二种就是在RMAN下执行命令:

backup current controlfile;

在这里插入图片描述
可以看到已经备份到这里了

cd /u01/app/oracle/fast_recovery_area/ORCL/autobackup/2023_12_03

我们切换到这里目录查看一下(每个人的可能不一样,根据备份完成之后的信息提示进行切换)
在这里插入图片描述
我们可以看到已经备份完成

方法3.在备份其他文件的时候使用子句备份

我们需要在备份其他文件的时候加上include current controlfile

backup datafile 4 include current controlfile; 

在这里插入图片描述
我们可以看到在备份数据文件4的时候同时备份了控制文件
在这里插入图片描述

方法4.修改控制文件数据

sql "alter database backup controlfile to ''/tmp/wilson.bin''";

这里两个单引号是转义符的作用
在这里插入图片描述
切换到tmp目录下查看备份的控制文件
在这里插入图片描述

4、备份spfile文件

方法1.在RMAN中执行命令

backup spfile format '/u01/app/oracle/backup/md_%U';

在这里插入图片描述

  • 其实通过上图和控制文件备份图片我们可以看出,当我们备份控制文件时也会默认备份spfile,我们备份spfile时也会默认备份控制文件,并且将他们两个打包成一个备份文件

在这里插入图片描述

方法2.修改RMAN参数

CONFIGURE CONTROLFILE AUTOBACKUP ON;

这里和控制文件自动备份是通一个参数,因为spfile和控制文件默认是一起进行备份的

5、备份归档日志文件

方法1.使用命令备份

BACKUP ARCHIVELOG
FORMAT '/u01/app/oracle/backup/ar_%t_%s_%p';

DELETE ALL INPUT的作用是删除原来的东西,对于我这个命令而言就是删除/u01/app/oracle/backup/目录下的东西,然后在将归档日志文件备份到里面,all命令就是备份所有的归档日志文件,增加完参数就是下面这条命令:

BACKUP ARCHIVELOG ALL
FORMAT '/u01/app/oracle/backup/ar_%t_%s_%p'
DELETE ALL INPUT;

在这里插入图片描述
我们可以看到归档日志文件已经备份完成
在这里插入图片描述

方法2.在备份其他文件是附加备份

backup database plus archivelog format '/u01/app/oracle/backup/db_%U'; 
  • 以上示例是在对数据库备份的时候对归档日志文件备份

在这里插入图片描述

6、并发备份数据库的实现

方法1.使用命令实现多通道并发备份

三通道备份实现

run {
	allocate channel c1 type disk;
	allocate channel c2 type disk;
	allocate channel c3 type disk;
	backup incremental level=0
	format '/u01/app/oracle/backup/p_%u'
	(datafile 1 channel c1 tag='sys')
	(datafile 2 channel c2 tag='aux')
	(datafile 3,4,5 channel c3 tag='other');

	sql 'alter system archive log current';
}

在这里插入图片描述
在操作的过程中我们能明显的感觉到速度比单通道备份快了许多。

关于数据文件编号查询:
我们需要进入数据库
然后执行select file#, name from v$datafile;查看编号
对于格式比较乱我们可以进行一些整理col name format a50;
在这里插入图片描述
前边的这些就是我们进行并发备份时数据文件的编号

方法2.修改参数实现多通道并发

我们先查看一下当前参数

show all;

在这里插入图片描述
通过查看参数我们可以看到当面默认并发度是1
修改参数为3:

CONFIGURE DEVICE TYPE DISK PARALLELISM 3 BACKUP TYPE TO BACKUPSET;

在这里插入图片描述
这个时候我们在做一次完备进行测试

backup database plus archivelog format '/u01/app/oracle/backup/db_%U'; 

在这里插入图片描述
在这里插入图片描述
发现启动了3个通道进行备份,说明修改参数实现了并发备份
最后测试完成之后我从新关闭了并发,这里不关也可以
在这里插入图片描述

7、双重备份的实现

方法1.RMAN命令实现

这里首先需要创建两个文件,我直接新创两个文件b1,b2作为两个备份文件的存放地点

mkdir /u01/app/oracle/b1;
mkdir /u01/app/oracle/b2;

在这里插入图片描述
开始备份

backup copies 2 datafile 5 format '/u01/app/oracle/b1/d_%U','/u01/app/oracle/b2/d_%U';

代码解释copies 2表示双重备份,如果要备份三个就需要将2改成3就可以了,
datafile 5表示对数据文件5进行备份
在这里插入图片描述
我们可以看到我们对数据文件进行了双重备份
在这里插入图片描述

方法2.修改RMAN参数

参看RMAN参数

show all;

在这里插入图片描述
我们可以看到当前默认只备份一份

CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 2;

将参数修改成2就可以实现双重备份了
在这里插入图片描述

8、镜像拷贝实现

在这里插入图片描述

copy datafile 5 to '/u01/app/oracle/b2/wilson.dbf' tag='example';

在这里插入图片描述
在这里插入图片描述
查看拷贝历史

list copy;

在这里插入图片描述

9、增量备份

做0级备份

run {
	allocate channel c1 type disk;
	backup incremental level 0 database format '/u01/app/oracle/backup/l0_%u';
}

在这里插入图片描述

可以看到我们刚刚做的备份级别是0级备份,大小1.08G

做1级备份

run {
	allocate channel c1 type disk;
	backup incremental level 1 database format '/u01/app/oracle/backup/l1_%u';
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

我们发现1级备份大小小于0级备份
注意:当我们从来没有做过0级备份时,做1级备份时会首先自动做一次0级备份

累积性差量备份

累积性需要在级别后边加cumulative

run {
	allocate channel c1 type disk;
	backup incremental level 1 cumulative database format '/u01/app/oracle/backup/l1c_%u';
}

在这里插入图片描述
我们可以发现l1c文件比l1文件大,因为累积性差量备份多了一些重复的数据

总结

备份类型:

  • 完全备份包含所有使用的数据文件块。
  • 0 级增量备份等同于标记为 0 级的 完全备份。 累积 1 级增量备份只包含自上次 0 级增量备份以来修改过的块。
  • 差异 1 级增量备份只包含自上次增量备份以来修改过的块。(默认1级备份就是差异备份)
  • 2级累积增量备份上次任意级别备份至今的增量(任意一次备份至今)
    在这里插入图片描述

10、自定义标签

backup incremental level 1 cumulative database format '/u01/app/oracle/backup/l1_%u' tag='zidingyibiaoqian';

在这里插入图片描述
我们查看我们备份的备份集

list backup;

在这里插入图片描述
查到标签之后我们可以进行标签查询备份信息

list backup tag='zidingyibiaoqian';

在这里插入图片描述
灵活运用标签能够很好的管理备份集

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/221979.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue混淆与还原

Vue混淆与还原 引言 Vue是一种流行的JavaScript框架,用于构建用户界面。它简单易用且功能强大,备受开发者喜爱。然而,在传输和存储过程中,我们需要保护Vue代码的安全性。混淆是一种有效的保护措施,可以加密和压缩代码…

股市复苏中的明懿金汇:抓住新机遇

2023年对于明懿金汇来说是充满挑战与机遇的一年。面对复杂多变的市场环境,明懿金汇展现了其对市场趋势的敏锐洞察和卓越的策略适应能力。以下是该公司在2023年的主要投资策略和市场适应方式的详细分析。 随着2023年中国股市迎来反弹,明懿金汇迅速调整了…

【Backbone】TransNeXt:最新ViT模型(原理+常用神经网络汇总)

文章目录 一、近几年神经网络 Backbone 回顾1.Densenet 与 Resnet2.CBP3.SENet4.GCNet5.DANet6.PANet 与 FPN7.ASPP8.SPP-net9.PSP-net10.ECA-Net 二、TransNeXt(2023)1.提出问题2.Aggregated Pixel-focused Attention2.1 Pixel-focused Attention&#…

图像识别经典轻量级网络模型总结梳理、原理解析与优劣对比分析

在前面的很多博文中,我们不止一次提到过,在实际业务项目开发过程中,我们会经常使用到轻量级的网络模型,本文主要是总结梳理前面经常使用到的一些轻量级的图像识别模型。 【MobileNetv1】 MobileNetv1 是一种轻量级的卷积神经网络&…

景联文科技:高质量垂直领域数据集助力AI技术突破

随着人工智能技术的飞速发展,垂直领域数据集在提升模型性能、解决领域问题、推动创新应用以及提升竞争力等方面的重要性日益凸显。 提高模型性能:垂直领域数据集专注于特定任务或领域,使用这些数据集进行训练可以让模型更好地理解和解决特定领…

静态HTTP和动态HTTP有什么区别

静态HTTP是指网页内容在服务器上以静态文件的形式存在,每个页面都是固定的,不能根据用户的操作或输入进行改变。当用户请求一个静态页面时,服务器直接将页面的HTML代码返回给用户的浏览器进行显示。静态HTTP服务器的主要优点是速度快、简单易…

【开源】基于Vue.js的房屋出售出租系统

文末获取源码,项目编号: S 083 。 \color{red}{文末获取源码,项目编号:S083。} 文末获取源码,项目编号:S083。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 房屋销售模块2.2 房屋出租模块2.3 预…

[足式机器人]Part2 Dr. CAN学习笔记-数学基础Ch0-3线性化Linearization

本文仅供学习使用 本文参考: B站:DR_CAN Dr. CAN学习笔记-数学基础Ch0-3线性化Linearization 1. 线性系统 Linear System 与 叠加原理 Superposition2. 线性化:Taylor Series3. Summary 1. 线性系统 Linear System 与 叠加原理 Superposition…

易点易动设备管理系统--提升设备备品备件管理效率的工具

设备备品备件管理是市场推广人员关注的重要问题之一。为了帮助市场推广人员提升设备备品备件管理效率,易点易动设备管理系统应运而生。本文将详细介绍易点易动设备管理系统的功能和优势,以及如何借助该系统提高设备备品备件管理效率,提升企业…

案例046:基于微信小程序的云上考场

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

吉他初学者学习网站搭建系列(5)——如何做一个在线节拍器

文章目录 背景实现TransportLoop代码 在线尝试 背景 我们看吉他谱时,经常看到拍号,例如6/8。它的含义是一拍是一个八分音符,一小节有六拍。四分音符的时长是一秒,即60拍/分钟。基于这样的背景知识,我们就可以根据一些…

ChatGPT文书替代论“热”潮背后的“冷”思考

2022年11月底OpenAI推出的人工智能聊天工具ChatGPT仅推出一周就火爆全球,推出两个月,就在全球范围内坐拥1亿用户,根据华尔街消息,OpenAI目前估值已达290亿美元。 认识ChatGPT ChatGPT是由美国成立的人工智能研究公司OpenAI研究开…

Faster Transformer

Faster Transformer FasterTransformer包含transformer块的高度优化版本的实现,该块包含编码器和解码器部分。基于高效率的开发语言和工具: C, CUDA, cuBLAS and cuBLASlt支持的模型数据格式:FP32, FP16, BF16, INT8 (limited models) and F…

【matlab程序】matlab画太极图|阴阳

【matlab程序】matlab画太极图|阴阳 %% 海洋与大气科学; % 时间:20231205; % clear;clc;close all; t=0:1/100000:2pi+0.00001; t1=-pi/2:1/100000:pi/2+0.00001; t2=pi/2:1/100000:3pi/2+0.00001; R=10; r=1; figure plot(Rcos(t),Rsin(t),‘color’,‘k’,‘lin…

网络安全威胁——计算机病毒

计算机病毒 1. 定义2. 计算机病毒的特点3. 计算机病毒的常见类型和攻击方式4. 如何防御计算机病毒 1. 定义 计算机病毒是计算机程序编制者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或程序代码。因其特点与生…

用AI批量生成文章的工具有哪些?免费AI生成工具

人工智能(AI)技术不断演进,为许多领域带来了前所未有的便利。其中,AI生成文章技术作为一个备受关注的领域,为大家提供了独特的解决方案,特别是在批量文章生成的需求上。 1. AI生成文章的方法 开放式AI模型…

智能井盖传感器,预警井盖倾斜的办法

城市生命线就像人体的“神经”和“血管”,是城市安全运行的保障。随着数字化时代的到来,智能井盖传感器作为城市生命线的一个重要组成部分,逐渐变得越来越“聪明”,它让城市由井盖引发的风险感知预警更加高效,进一步提…

mysql原理--重新认识MySQL,字符集,比较规则

1.MySQL请求处理 1.1.查询缓存 MySQL 服务器程序处理查询请求时,会把刚刚处理过的查询请求和结果缓存起来,如果下一次有一模一样的请求过来,直接从缓存中查找结果就好了,就不用再傻呵呵的去底层的表中查找了。这个查询缓存可以在不…

Python-封装配置文件

Code [url] baidu http://www.baidu.com[value] send_value 百度[server] ip 220.181.111.188封装的格式可以套用 # 封装,类似函数调用 import configparserclass ReadConfigIni():def __init__(self,filename):self.cf configparser.ConfigParser()self.cf.read(filenam…

低成本物联网安全芯片ACL16_S 系列,可应用物联网认证、 SIM、防抄板和设备认证等产品上

ACL16_S 芯片是针对物联网认证、 SIM、防抄板和设备认证需求推出的高安全芯片。芯片采用 32 位 ARMCortex™-M0 系列内核,片内集成多种安全密码模块,包括 RSA/ECC DES/TDES、 SHA-1/-256、 AES-128/-192/-256 等国际安全算法,支持真随机数发…