Oracle使用块更改跟踪改善增量备份的性能

1.概述

增量备份的块更改跟踪功能,通过在块更改跟踪文件中的每个数据文件中记录更改的块来提高增量备份的性能。

此文件是存储在数据库区域中的小型二进制文件。

RMAN在生成重做时,跟踪更改的块。

如启用了块更改跟踪,则RMAN将使用更改跟踪文件来识别增量备份的更改块,从而避免扫描数据文件中的每个块。

RMAN仅在增量级别大于0时使用块更改跟踪,因为0级增量备份包括所有块。

2.检查是否开启块更改跟踪

sql 复制代码
COL STATUS   FORMAT A8
COL FILENAME FORMAT A60
SELECT STATUS,FILENAME FROM V$BLOCK_CHANGE_TRACKING;

3.启用块更改跟踪

sql 复制代码
--确保已设置初始化参数
SHOW PARAMETER DB_CREATE_FILE_DEST

--如果未设置参数,并且数据库已打开,则执行以下命令
ALTER SYSTEM SET DB_CREATE_FILE_DEST = '/disk1/bct/' SCOPE=BOTH SID='*';

--启用块更改跟踪
ALTER DATABASE ENABLE BLOCK CHANGE TRACKING;
或者指定位置创建块更改跟踪文件
ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '/mydir/rman_change_track.f' REUSE;
注意:REUSE选项告知 Oracle 数据库使用指定名称覆盖任何现有的块更改跟踪文件。

4.禁用块更改跟踪

sql 复制代码
ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;
注意:禁用后,数据库将从操作系统中删除块更改跟踪文件。

5.更改块更改跟踪文件的位置

sql 复制代码
--确认当前位置
COL STATUS FORMAT A8
COL FILENAME FORMAT A60
SELECT STATUS,FILENAME FROM V$BLOCK_CHANGE_TRACKING;

--关闭数据库
SHUTDOWN IMMEDIATE

--使用操作系统命令,将更改跟踪文件移动到新的位置
mv rman_change_track.f /new

--执行命令移动至新位置
ALTER DATABASE RENAME FILE '/disk1/bct/RDBMS/changetracking/o1_mf_2f71np5j_.chg' TO '/disk2/bct/RDBMS/changetracking/o1_mf_2f71np5j_.chg';

--打开数据库
ALTER DATABASE OPEN;

--如果情况不允许,无法关闭数据库,则执行以下命令
ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;
ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE 'new_location';

在这种情况下,将丢失块更改跟踪文件的内容。在下次完成 0 级增量备份之前,RMAN 必须扫描整个文件。
相关推荐
leo__52012 分钟前
IEC 104 协议 C 语言实现
c语言·数据库
摇滚侠13 分钟前
DBeaver 导入数据库 导入 SQL 文件 MySQL 备份恢复
java·数据库·mysql
若兰幽竹36 分钟前
【从零开始编写数据库系统:架构设计与实现】第5章:查询执行引擎与火山模型
数据库·架构·数据库内核·toydb
天空属于哈夫克31 小时前
企业微信API常见的错误和解决方案
java·数据库·企业微信
东风破1371 小时前
DM8达梦数据库备份、恢复原理介绍
数据库·oracle·dm达梦数据库
鹏子训2 小时前
AI记忆新思路:用SQLite替代向量数据库,去EMBEDDINGS化,谷歌开源Google Always On Memory Agent
数据库·人工智能·sqlite·embedding
Frank_refuel2 小时前
终端环境下:Ubuntu 22.04.1 安装 MySQL 数据库
数据库·mysql·ubuntu
摇滚侠2 小时前
VMvare 虚拟机 Oracle19c 安装步骤,远程连接 Oracle19c,百度网盘安装包
java·oracle
虹科网络安全3 小时前
艾体宝产品|深度解读 Redis 8.4 新增功能:原子化 Slot 迁移(下)
数据库·redis·bootstrap
有味道的男人4 小时前
对接亚马逊平台接口,商品全量信息一键抓取
数据库