RMAN备份时报“ORA-19504: failed to create file”和“ORA-27038: created file already exists”

RMAN> run {
2> allocate channel ch00 type disk;
3> backup format ‘/dbbackup/db_%T‘ database;
4> release channel ch00;
5> }

报出以下错误:

released channel: ch00
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on ch00 channel at 08/11/2015 17:32:39
ORA-19504: failed to create file "/dbbackup/db_20150811"
ORA-27038: created file already exists Additional information: 1

RMAN>

原因是控制文件和参数文件需要单独生成一个备份集,不能和数据库共用一个备份集,而在给数据文件指定备份集时又只指定一个单一的文件名,所以报了个文件已经存在的错误。 解决方法是在format里加一个%U,这样就会自动生成不同又唯一的文件名了。

控制文件之所以不能和数据文件共存于一个备份集是因为二者的block size不一样,参看ref2有一段话。

Note:
If the control file block size is not equal to the block size for data file 1, then the control file cannot be written into the same backup set as the data file. RMAN writes the control file into a backup set by itself if the block size is different. The V$CONTROLFILE.BLOCK_SIZE column indicates the control file block size, whereas the DB_BLOCK_SIZE initialization parameter indicates the block size of data file 1.
SQL> select name,block_size from v$controlfile;

NAME                                                         BLOCK_SIZE
------------------------------------------------------------ ----------
/u01/app/oracle/oradata/dbt/control01.ctl                         16384
/u01/app/oracle/oradata/dbt/control02.ctl                         16384

SQL> show parameter db_block_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_block_size                        integer     8192 

SQL>
时间: 2024-08-27 11:43:49

RMAN备份时报“ORA-19504: failed to create file”和“ORA-27038: created file already exists”的相关文章

【翻译自mos文章】rman 备份时报:ORA-02396: exceeded maximum idle time

rman 备份时报:ORA-02396: exceeded maximum idle time 参考原文: RMAN backup faling with ORA-02396: exceeded maximum idle time, please connect again (Doc ID 1446182.1) 适用于: Oracle Server - Enterprise Edition - Version 11.2.0.1 and later Information in this docu

IDEA创建maven项目报错解决:Failed to create a Maven project: 'C:/Users/../IdeaProjects/../pom.xml' already e

晚上用IDEA创建Java的maven项目时报错了: Failed to create a Maven project: 'C:/Users/../IdeaProjects/../pom.xml' already exists in VFS1这个错误是因为之前我已经在这个文件夹里创建过同名的maven项目. 解决方法如下: 先把这个项目删了,然后把回收站中的这个项目和之前同名的项目一起彻底删除,重新创建一遍就不会报错了 IDEA创建maven项目报错解决:Failed to create a M

RMAN备份数据库与恢复数据库(整库)

1 准备 2 1.1 检查数据库归档状态 2 1.2 RMAN登陆目标 2 2 备份全库 2 2.1 创建备份数据存储目录 2 2.2 RMAN备份全库 2 2.3 试验(备份后,改变数据) 5 2.4 试验(模拟删除控制文件) 7 3 恢复数据库 8 3.1 假定没有设置ORACLE_SID,设置ORACLE_SID启动一个伪实例 8 3.2 恢复SPFILE 9 3.3 恢复控制文件 9 3.4 恢复数据库 10 目录 1    准备 1.1  检查数据库归档状态 [[email prote

rman 备份并异机恢复

1.RMAN 备份脚本 RUN { CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO "/backup/ZGW_Controlfile_%F"; ALLOCATE CHANNEL CH1 DEVICE TYPE DISK;

linux下仅仅有rman备份集的异机不同文件夹恢复

昨天在客户那里做了一次rman异机的恢复,把生产库弄一份给測试库用,总库大概80G,总共花费了2个小时,当时客户的环境是windows 11.2.0.3,今天早晨在linux下又一次測试了一下,记录下来供大家參考 环境: 全部操作都是按主机名区分 源库: 主机名  bre1  实例名为bre1  数据文件文件夹在/u01/app/oradata下 目标库: 主机名 bre2   数据文件准备放在/bre1/oradata下 废话不多说,以下是实际操作步骤 1.在源库创建备份集,而且复制到目标库

linux下只有rman备份集的异机不同目录恢复

昨天在客户那里做了一次rman异机的恢复,把生产库弄一份给测试库用,总库大概80G,总共花费了2个小时,当时客户的环境是windows 11.2.0.3,今天早晨在linux下重新测试了一下,记录下来供大家参考 环境: 所有操作都是按主机名区分 源库: 主机名  bre1  实例名为bre1  数据文件目录在/u01/app/oradata下 目标库: 主机名 bre2   数据文件准备放在/bre1/oradata下 废话不多说,下面是实际操作步骤 1.在源库创建备份集,并且拷贝到目标库 拷贝

搭建ORACLE DataGuard(使用RMAN备份)

搭建ORACLE DataGuard(使用RMAN备份) 操作系统:windows 2008 数据库:11.1.0.6 一.信息收集 1.配置信息收集 说明  主机名   IP地址      db_name   sid   DB_UNIQUE_NAME  Service_name 主库   dg1  192.168.0.11     orcl    orcl    orcldg1       orcldg1 备库   dg2  192.168.0.22     orcl    orcl    o

Oracle RMAN备份恢复指导书

目 录 1 目的与范围... 1 2 术语和定义... 1 3 角色和职责... 2 4 使用RMAN备份数据库... 2 4.1.1 检查数据库模式... 2 4.1.2 连接到target数据库... 3 4.1.3 查看备份信息... 3 4.1.4 备份数据库... 5 4.1.5 备份数据文件... 6 4.1.6 备份表空间... 6 4.1.7 备份控制文件... 6 4.1.8 备份归档日志文件... 7 4.1.9 备份闪回区... 8 4.1.10 增量备份... 8 4.2

oracle数据库rman备份计划及恢复

1.rman完全恢复的前提条件:历史的datafile,controlfile和spfile备份,加上完整的archivelog和完好的redolog. 2.rman备份脚本: a.RMAN 0级备份命令: run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup incremental level 0 tag 'level0' format "