在 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. 2、CentOS7密码重置

    一.重启系统,在开机过程中,快速按下键盘上的方向键↑和↓.目的是告知引导程序,我们需要在引导页面选择不同的操作,以便让引导程序暂停.  以下是暂停后的界面,可以查看下方的英文可知↑和↓的作用.  二. ...

  2. xshell/secureCRT连接Linux及其常用命令

    一.xshell:在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的 下载安装后连接步骤: 二.secureCRT:在Windows下登录UNIX或Linux服务 ...

  3. mybatis_day02

    2.映射器Mapper 相当于dao层,不用写实现类(mybatis底层会采用动态代理模式 会跟我生成实现) 步骤: (1) 创建项目 配置mybatis-config.xml 和昨天一样 (2) 创 ...

  4. centos 源码编译mysql5.7

    1- 源码安装mysql5.7 [自动安装脚本:https://files-cdn.cnblogs.com/files/lemanlai/make_mysql.sh] groupadd mysql u ...

  5. 浅谈python的第三方库——numpy(三)

    numpy库中矩阵的常用方法 1 矩阵转置 从上图可以看出:使用方法a.T可以将矩阵a转置. 2 均值与方差 注意:方法a.mean()会对矩阵a的所有元素求均值,a.var()也是考虑矩阵a的所有元 ...

  6. codechef Chef at the River

    难度 \(hard\) 题意 官方中文题意 做法 设\(G=(V,E)\) 定义1:\(M(G)\)为\(G\)的最小点覆盖 定义2:\(ans(G)\)为\(G\)的题意答案,不考虑船夫 结论1:\ ...

  7. linux查看硬件、系统信息

    查看机器型号等 dmidecode 是一个读取电脑 DMI(桌面管理接口(Desktop Management Interface))表内容并且以人类可读的格式显示系统硬件信息的工具.这个表包含系统硬 ...

  8. [CF1303A] Erasing Zeroes

    Solution 找到边界然后循环扫一遍数个数即可 #include <bits/stdc++.h> using namespace std; int n; const int N = 1 ...

  9. python3练习100题——054

    题目:取一个整数a从右端开始的4〜7位. a=input('please input a num:') print(a[-7:-3])

  10. 深入浅出Mybatis系列一-Mybatis入门

    注:本文转载自南轲梦 注:博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 最近两年 springmvc + mybatis 的在这种搭配还是蛮火的,楼主我呢, ...