在 Oracle 中越是简单的问题,往往越难找到答案,举个例子:

你是否留意观察过在 RMAN 进行备份的时候,自动生成的控制文件名称是否是按照 %F 规则来生成的?

关于控制文件自动备份路径格式,在另一篇博文中有详细介绍,点我查看。来自博客园 AskScuti

目录

1. 查看默认 RMAN 配置

2. 备份观察控制文件备份片名称

3. 为什么没有按照 %F 规则生成

1. 查看默认 RMAN 配置

RMAN> show all;

RMAN configuration parameters for database with db_unique_name PROD1 are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_PROD1.f'; # default

2. 备份观察控制文件名称

控制文件自动备份已经打开,且格式遵循 %F 命名,尝试备份 4 号文件

RMAN> backup datafile 4 format '/u01/app/oracle/backup/%s_%d_%U.d4';

Starting backup at 2019-06-08 21:11:35
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00004 name=/u01/app/oracle/oradata/PROD1/users01.dbf
channel ORA_DISK_1: starting piece 1 at 2019-06-08 21:11:35
channel ORA_DISK_1: finished piece 1 at 2019-06-08 21:11:36
piece handle=/u01/app/oracle/backup/6_PROD1_06u3k3o7_1_1.d4 tag=TAG20190608T211135 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 2019-06-08 21:11:36 Starting Control File and SPFILE Autobackup at 2019-06-08 21:11:36
piece handle=/u01/app/oracle/fast_recovery_area/PROD1/autobackup/2019_06_08/o1_mf_s_1010437896_ghqf098j_.bkp comment=NONE
Finished Control File and SPFILE Autobackup at 2019-06-08 21:11:37

注意控制文件自动备份,生成出来的名称:o1_mf_s_1010437896_ghqf098j_.bkp

有同学说你讲的 %F 命名规则明明是这样:c-IIIIIIIIII-YYYYMMDD-QQ

为什么生成出来却是这样:o1_mf_s_1010437896_ghqf098j_.bkp

3. 为什么没有按照 %F 规则生成

没有按照 %F 规则生成的原因是:默认情况下,控制文件自动备份的路径为闪回区,因此在默认闪回区里面生成的控制文件名称不遵循 %F 的命名方式,即使 RMAN 配置了 %F。

我们可以修改 RMAN 控制文件默认路径配置,例如

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/app/oracle/backup/%d_%F';

new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/app/oracle/backup/%d_%F';
new RMAN configuration parameters are successfully stored

再次进行备份查看控制文件生成的名称

RMAN> backup datafile 4;

Starting backup at 2019-06-08 21:20:36
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00004 name=/u01/app/oracle/oradata/PROD1/users01.dbf
channel ORA_DISK_1: starting piece 1 at 2019-06-08 21:20:36
channel ORA_DISK_1: finished piece 1 at 2019-06-08 21:20:37
piece handle=/u01/app/oracle/fast_recovery_area/PROD1/backupset/2019_06_08/o1_mf_nnndf_TAG20190608T212036_ghqfk4n7_.bkp tag=TAG20190608T212036 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 2019-06-08 21:20:37 Starting Control File and SPFILE Autobackup at 2019-06-08 21:20:37
piece handle=/u01/app/oracle/backup/PROD1_c-2202758063-20190608-01 comment=NONE
Finished Control File and SPFILE Autobackup at 2019-06-08 21:20:38

这时候,控制文件名称就遵循了 %F 的格式。

注意:在指定控制文件自动备份路径的时候,格式 %F 是强制必须指定的,否则显示错误 RMAN-06492: control file AUTOBACKUP format "xxxx" must specify a "%F" format specifier

为什么 RMAN 控制文件自动备份的名称格式没有遵循 %F 规则的更多相关文章

  1. 关于 RMAN 控制文件自动备份路径中指定的 %F 说明

    默认情况下,RMAN备份的属性配置一共 14 行( show all; )来自博客园AskScuti CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVIC ...

  2. RMAN兼容性、控制文件自动备份、保存时间、备份策略、备份脚本(二)

    RMAN 程序的兼容性 RMAN 环境由以下5部分组成:(1) RMAN executable(2) Recovery catalog database(3) Recovery catalog sch ...

  3. 【RMAN】Oracle中如何备份控制文件?备份控制文件的方式有哪几种?

    真题1. 如何备份控制文件?备份控制文件的方式有哪几种? 答案:备份控制文件的方式有多种. ① 备份控制文件可以在线进行: SQL> ALTER DATABASE BACKUP CONTROLF ...

  4. 如何将云上的Linux文件自动备份到本地服务器

    需求场景: 将云上一台Linux服务器文件备份到本地服务器,一周一备即可. 面对这样一个需求,我们可能面临下列几个问题, 备份方式:是云服务器推文件到本地服务器写入,还是本地服务器从云服务器拉文件?这 ...

  5. 文件自动备份和同步bypy和syncthing

    http://blog.csdn.net/pipisorry/article/details/52464402 Linux定时备份数据到百度云盘 sudo pip3 install requestss ...

  6. UltraEdit UE如何取消保存文件自动备份

    高级-配置-文件处理-备份,设置为不备份                          

  7. RMAN数据库恢复之控制文件和参数文件恢复

    一.控制文件的恢复1.查询控制文件的路径 SQL> SELECT * FROM V$CONTROLFILE; STATUS NAME IS_RECOVERY_DEST_FILE BLOCK_SI ...

  8. 一则关于控制文件全部丢失后如何重新编目RMAN元数据的简单实验

    主题:一则简单的RMAN元数据编目实验,来自于博客园AskScuti. 场景:RMAN备份完整情况下,未使用Catalog目录库.删除了所有的控制文件,在手工重建后,导致记录在控制文件中的RMAN备份 ...

  9. Oracle 控制文件(CONTROLFILE)

    一.Oracle 控制文件 为二进制文件,初始化大小由CREATE DATABASE指定,可以使用RMAN备份 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等 ...

随机推荐

  1. 安装NodeJs和NPM到Ubuntu(APT)

    运行环境 系统版本:Ubuntu 16.04.2 LTS 软件版本:node-v10.16.3.npm-6.9.0 硬件要求:无 安装过程 1.安装NPM和NodeJs root@localhost: ...

  2. 装饰器(Python)

    装饰器(decorators)是 Python 的一个重要部分.简单地说:装饰器是修改其他函数的功能的函数,能让我们的代码更容易被扩展,更加简短.举个例子: def login(): print(&q ...

  3. IIS WEB站点设置

    IIS安装 打开控制面板 -> 程序 -> 打开或关闭Windows功能 ,在弹出得对话框中选择“Internet信息服务”复选框.我这里是Windows server 2019 ,界面有 ...

  4. js遇到代码出现问题时如何调试代码

    单步跟踪调试 debugger; 控制台watch功能查看变量当前值 进入函数操作 随着不断点击,不停进行循环,指定变量的值也在发生改变 添加断点 跳入跳出函数 throw new Error() 主 ...

  5. git commond 详解

    Git commit git commit 主要是将暂存区里的改动给提交到本地的版本库.每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id, ...

  6. 【Flutter】环境搭建以及HelloWorld创建

    平台:WIndows10 Android Studio VScode同理,具体可以参考Flutter中文站 配置环境 1.下载SDK,进入官网选择最新的即可.我这里选择的是v1.9.1+hotfix. ...

  7. Selenium实战(五)——HTML测试报告

    一.概览下载与安装 HTMLTestRunner是unittest的一个扩展,可以生成易于使用的HTML测试报告.HTMLTestRunner是在BSD许可证下发布的. 下载地址:http://tun ...

  8. C# 将List数据 导出到csv 文件

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Ref ...

  9. 关于新版vue-cli安装json-server在build文件里没生成出dev-server文件

    今天在安装json-server时遇到一个问题,build文件里并没有生成dev-server.js文件, 开始是怀疑配置有问题,或者安装不正确,然后重新安装了两三次,还是这样,郁闷.. 通过查询资料 ...

  10. Python 变量&列表 初学者笔记

    变量 消除空白后该变量需要存储一下(此操作常用于“储存用户输入并对其进行清理”) strip()消除两端空白 lstrip()消除前部空白 rstrip()消除末尾空白   upper()全部字母大写 ...