暂无图片
Oracle 12cR2 RAC to Rac搭建datagurad控制文件复制过程中报错,是控制文件损坏吗,可以通过什么方式解决?
我来答
分享
不如打代码
2021-09-13
Oracle 12cR2 RAC to Rac搭建datagurad控制文件复制过程中报错,是控制文件损坏吗,可以通过什么方式解决?

Oracle 12cR2 RAC to Rac搭建datagurad控制文件复制过程中报错,是控制文件损坏吗,还是可以通过设置参数?

软硬件环境

操作系统:centos7.6
内存:4G
RAC主机:2台
RAC备机:2台

问题描述

把备库删除后重新搭建物理备库还是会出现控制文件损坏的错误~~

rman 使用duplicate创建备库的过程中,提示

List of Files Which Were Not Cataloged
=======================================
File Name: +DATA/stbrac/CONTROLFILE/current.297.1083159187
  RMAN-07517: Reason: The file header is corrupted
File Name: +DATA/stbrac/CONTROLFILE/current.296.1083159187
  RMAN-07517: Reason: The file header is corrupted

执行的命令如下:

run {
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate auxiliary channel stbc1 type disk;
DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE
SPFILE
set 'db_unique_name'='stbrac'
set instance_name='stbrac1'
set instance_number='1'
set db_create_online_log_dest_1='+DATA'
set db_create_online_log_dest_2='+DATA'
set db_recovery_file_dest='+DATA'
set audit_file_dest='/u01/app/oracle/admin/stbrac/adump'
set core_dump_dest='/u01/app/oracle/admin/stbrac/cdump'
nofilenamecheck
dorecover;
}

执行命令后的日志在附件。

备库执行查询语句报错

[oracle@stbrac1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Mon Sep 13 13:39:41 2021

Copyright (c) 1982, 2016, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL> SELECT NAME, DB_UNIQUE_NAME, DATABASE_ROLE, OPEN_MODE FROM GV$DATABASE;
SELECT NAME, DB_UNIQUE_NAME, DATABASE_ROLE, OPEN_MODE FROM GV$DATABASE
             *
ERROR at line 1:
ORA-00204: error in reading (block 1, # blocks 1) of control file
ORA-00202: control file: '+DATA/STBRAC/CONTROLFILE/current.295.1083159187'
ORA-15081: failed to submit an I/O operation to a disk


SQL> select open_mode from v$database;
select open_mode from v$database
                      *
ERROR at line 1:
ORA-00204: error in reading (block 1, # blocks 1) of control file
ORA-00202: control file: '+DATA/STBRAC/CONTROLFILE/current.295.1083159187'
ORA-15081: failed to submit an I/O operation to a disk

SQL>  show parameter control_file;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time        integer     30
control_files                        string      +DATA/STBRAC/CONTROLFILE/curre
                                                 nt.295.1083159187, +DATA/STBRA
                                                 C/CONTROLFILE/current.294.1083
                                                 159187

主库和备库控制文件后面编号不一样

[oracle@rac1 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Mon Sep 13 14:36:07 2021

Copyright (c) 1982, 2016, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL>  show parameter control_file;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time        integer     30
control_files                        string      +DATA/RAC/CONTROLFILE/current.
                                                 262.1082715565, +DATA/RAC/CONT
我来答
添加附件
收藏
分享
问题补充
5条回答
默认
最新
不如打代码

问题解决方法

通过查询alert日志找到问题原因

<msg time='2021-09-10T13:41:10.839-04:00' org_id='oracle' comp_id='rdbms'
 type='UNKNOWN' level='16' host_id='stbrac1'
 host_addr='192.168.2.81' pid='4224'>
 <txt>ORA-00210: cannot open the specified control file
ORA-00202: control file: &apos;+DATA/STBRAC/CONTROLFILE/current.259.1082893017&apos;
ORA-17503: ksfdopn:2 Failed to open file +DATA/STBRAC/CONTROLFILE/current.259.1082893017
ORA-15001: diskgroup &quot;DATA&quot; does not exist or is not mounted
ORA-15040: diskgroup is incomplete
ORA-00210: cannot open the specified control file
ORA-00202: control file: &apos;+DATA/STBRAC/CONTROLFILE/current.258.1082893017&apos;
ORA-17503: ksfdopn:2 Failed to open file +DATA/STBRAC/CONTROLFILE/current.258.1082893017
ORA-15001: diskgroup &quot;DATA&quot; does not exist or is not mounted
ORA-15040: diskgroup is incomplete

最后一步步发现asm服务是正常的,DATA磁盘组也是mounted的。

找到了一篇文章解决了,是因为权限的问题。
https://www.shuzhiduo.com/A/8Bz8evXNJx/

SOLUTION
a) Please execute the next steps as grid OS user:

$> setasmgidwrap o=/u01/app/oracle/product/12.1.0.2/dbhome_1/bin/oracle

$> chgrp asmadmin /u01/app/oracle/product/12.1.0.2/dbhome_1/bin/oracle

$> ls -l /u01/app/oracle/product/12.1.0.2/dbhome_1/bin/oracle

注释 :正确的权限如下:  6751
暂无图片 评论
暂无图片 有用 1
暂无图片
不如打代码
上传附件:rac dg搭建日志.txt
暂无图片 评论
暂无图片 有用 0
三笠丶
暂无图片
把omf关了,然后重命名控制文件,或者修改参数文件中控制文件名称。
暂无图片 评论
暂无图片 有用 0
不如打代码
题主
2021-09-14
大神,你好。这个错不是备库控制文件损坏的原因吗?
三笠丶
答主
2021-09-14
感觉像是你备库的参数文件识别不到控制文件,你可以比对一下
Kubee

standby database 创建spfile并指定control_files参数中控制文件路径信息,启动备库。

暂无图片 评论
暂无图片 有用 0
不如打代码
题主
2021-09-17
感谢。
Kubee

duplicate target database for standby from active database nofilenamecheck;
之前搭建环境时创建备库,没有你写那么多配置。

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
附件列表
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏