12c broker 配置文件损坏处理

简介:

一、问题描述
1.查看broker日志发现报错

tail -f drcorcl.log
>> Starting Data Guard Broker bootstrap <<
Broker Configuration File Locations:
      dg_broker_config_file1 = "+DATADG/orcl/dr1.dat"
      dg_broker_config_file2 = "+DATADG/orcl/dr2.dat"
2017-12-02 17:08:50.847                      DMON: Attach state object
2017-12-02 17:08:50.941                      DMON: cannot open configuration file "+DATADG/orcl/dr2.dat", retrying
2017-12-02 17:08:51.952                      DMON: cannot open configuration file "+DATADG/orcl/dr2.dat"
2017-12-02 17:08:51.954                        ORA-17503: ksfdopn:2 Failed to open file +DATADG/orcl/dr2.dat
2017-12-02 17:08:51.954                        ORA-15173: entry 'dr2.dat' does not exist in directory 'orcl'
2017-12-02 17:08:51.954                      DMON: Error opening "+DATADG/orcl/dr2.dat", error = ORA-16572
2017-12-02 17:08:51.954                      DMON: Establishing "+DATADG/orcl/dr1.dat" as the more current file
2017-12-02 17:08:51.958                      DMON: rfafoGetLocks reinitializing dubious PMYSHUT lock value block contents: sts=0, flags=0x0, spare1=0x0, spare2=0x0, cksm=0x0, rndm=0x0
2017-12-02 17:08:51.958                      DMON: Broker state reconciled, version = 0, state = 00000000
2017-12-02 17:08:51.958                      DMON: Broker State Initialized
2017-12-02 17:08:51.958                            Version = 1
2017-12-02 17:08:51.958                            State = 00000000
2017-12-02 17:08:51.958                      DMON: Entered rfm_get_chief_lock() for CTL_BOOTSTRAP, reason 2
2017-12-02 17:08:51.959 7fffffff           0 DMON: Entered rfm_get_chief_lock() for CTL_BOOTSTRAP, reason 0
2017-12-02 17:08:55.971 7fffffff           0 DMON: start task execution: broker initialization
2017-12-02 17:08:55.971                      DMON: Boot configuration (0.0.0), loading from "+DATADG/orcl/dr1.dat"
2017-12-02 17:08:55.979                      DMON Registering service orcl_DGB with listener(s)
2017-12-02 17:08:55.980                      DMON: Executing SQL [ALTER SYSTEM REGISTER]
2017-12-02 17:08:55.980                      SQL [ALTER SYSTEM REGISTER] Executed successfully
12/02/2017 17:08:55
Broker Configuration:       "dg_config"
      Protection Mode:            Maximum Availability
      Fast-Start Failover (FSFO): Disabled, flags=0x0, version=0
      Primary Database:           orcl (0x01010000)

2.查看broker是否正常

DGMGRL> show configuration;

Configuration - dg_config

  Protection Mode: MaxAvailability
  Members:
  orcl   - Primary database
    orcldg - Physical standby database 

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS   (status updated 57 seconds ago)       --正常可用。
因为设置了两个broker文件,所以损坏了一个文件没所谓。

二、处理过程

1.停掉dmon进程

SQL> alter system set dg_broker_start=false;
System altered.

2.复制配置文件

    <roidb01:+ASM:/home/grid>$asmcmd -p
lsASMCMD [+] > 
DATADG/
ASMCMD [+] > cd datadg
ASMCMD [+datadg] > ls
ASM/
ORCL/
arcch/
arch/
orapwasm
ASMCMD [+datadg] > cd orcl
ASMCMD [+datadg/orcl] > ls
ARCHIVELOG/
CONTROLFILE/
DATAFILE/
DATAGUARDCONFIG/
ONLINELOG/
PARAMETERFILE/
TEMPFILE/
dr1.dat
ASMCMD [+datadg/orcl] > cp dr1.dat dr2.dat  

3.启动dmon

SQL> alter system set dg_broker_start=true;

System altered.
SQL> !ps -ef|grep dmon
oracle   31088     1  0 17:40 ?        00:00:00 ora_dmon_orcl
oracle   31120 25505  0 17:40 pts/0    00:00:00 /bin/bash -c ps -ef|grep dmon
oracle   31122 31120  0 17:40 pts/0    00:00:00 grep dmon

SQL> 

4.查看broker日志

12/02/2017 17:38:05
Data Guard Broker shutting down
RSM0 successfully terminated
2017-12-02 17:38:08.711                      >> DMON Process Shutdown <<
2017-12-02 17:38:09.710                      Fore Deregistering service orcl_DGB with listener(s)
2017-12-02 17:38:09.711                      Fore: Executing SQL [ALTER SYSTEM REGISTER]
2017-12-02 17:38:09.711                      SQL [ALTER SYSTEM REGISTER] Executed successfully
2017-12-02 17:40:04.954                      LGWR: Creating Data Guard Broker Monitor Process (DMON)
2017-12-02 17:40:07.977                      >> Starting Data Guard Broker bootstrap <<
2017-12-02 17:40:07.977                      Broker Configuration File Locations:
2017-12-02 17:40:07.977                            dg_broker_config_file1 = "+DATADG/orcl/dr1.dat"
2017-12-02 17:40:07.977                            dg_broker_config_file2 = "+DATADG/orcl/dr2.dat"
2017-12-02 17:40:07.977                      DMON: Attach state object
2017-12-02 17:40:07.978                      DMON: rfafoGetLocks reinitializing dubious PMYSHUT lock value block contents: sts=0, flags=0x0, spare1=0x0, spare2=0x0, cksm=0x0, rndm=0x0
2017-12-02 17:40:07.978                      DMON: Broker state reconciled, version = 0, state = 00000000
2017-12-02 17:40:07.978                      DMON: Broker State Initialized
2017-12-02 17:40:07.978                            Version = 1
2017-12-02 17:40:07.978                            State = 00000000
2017-12-02 17:40:07.978                      DMON: Entered rfm_get_chief_lock() for CTL_BOOTSTRAP, reason 2
2017-12-02 17:40:07.978 7fffffff           0 DMON: Entered rfm_get_chief_lock() for CTL_BOOTSTRAP, reason 0
2017-12-02 17:40:11.012 7fffffff           0 DMON: start task execution: broker initialization
2017-12-02 17:40:11.013                      DMON: Boot configuration (0.0.0), loading from "+DATADG/orcl/dr1.dat"
2017-12-02 17:40:11.027                      DMON Registering service orcl_DGB with listener(s)
2017-12-02 17:40:11.027                      DMON: Executing SQL [ALTER SYSTEM REGISTER]
2017-12-02 17:40:11.027                      SQL [ALTER SYSTEM REGISTER] Executed successfully
12/02/2017 17:40:11
Broker Configuration:       "dg_config"
      Protection Mode:            Maximum Availability
      Fast-Start Failover (FSFO): Disabled, flags=0x0, version=0
      Primary Database:           orcl (0x01010000)
12/02/2017 17:40:15
Version Check Results:
      Database orcldg returned ORA-00000
Creating process RSM0









本文转自 roidba 51CTO博客,原文链接:http://blog.51cto.com/roidba/2046784,如需转载请自行联系原作者

目录
相关文章
|
5天前
|
消息中间件 运维 监控
【Kafka】分区副本什么情况下会从 ISR 中剔出
【4月更文挑战第12天】【Kafka】分区副本什么情况下会从 ISR 中剔出
|
应用服务中间件
使用ehcache持久化数据到磁盘 并且在应用服务器重启后不丢失数据
使用ehcache时如何持久化数据到磁盘,并且在应用服务器重启后不丢失数据1、如何持久化到磁盘使用cache.flush(),每次写入到cache后调用cache.flush() ,这样ehcache 会将索引(xxx.index)回写到磁盘。
2823 0
|
9月前
在通过客户端向 hdfs 中写数据的时候,如果某一台机器宕机了,会怎么处理
在通过客户端向 hdfs 中写数据的时候,如果某一台机器宕机了,会怎么处理
71 0
|
11月前
|
存储 Oracle 关系型数据库
Dataguard Broker的配置
修改参数 参数DG_BROKER_START设置为true
|
11月前
|
存储 Java Apache
Apache ZooKeeper - ZK的内存数据 + 持久化事务日志 + 数据快照 初探
Apache ZooKeeper - ZK的内存数据 + 持久化事务日志 + 数据快照 初探
141 0
|
NoSQL API Redis
Undermoon - 为 Memory Broker 设置备份
Undermoon - 为 Memory Broker 设置备份
115 0
|
消息中间件 JSON Kafka
当 Kafka 分区不可用且 leader 副本被损坏时,如何尽量减少数据的丢失?
经过上次 Kafka 日志集群某节点重启失败导致某个主题分区不可用的事故之后,这篇文章专门对分区不可用进行故障重现,并给出我的一些骚操作来尽量减少数据的丢失。
474 0
当 Kafka 分区不可用且 leader 副本被损坏时,如何尽量减少数据的丢失?
|
消息中间件 Kafka
《kafka问答100例 -2》 创建Topic的时候 什么时候在Broker磁盘上创建的日志文件
《kafka问答100例 -2》 创建Topic的时候 什么时候在Broker磁盘上创建的日志文件
《kafka问答100例 -2》 创建Topic的时候 什么时候在Broker磁盘上创建的日志文件
|
消息中间件 JSON Kafka
Kafka如何修改分区Leader
Kafka如何修改分区Leader
Kafka如何修改分区Leader