这个错误是在 rac 底下出现的,应该算是个比较严重的错误,就是 某个节点 被 踢(evict)出去了,导致这个节点重启系统。
这个错误的原因多种多样,而且需要找的日志文件也是很多的,基本上,能找的日志都要找过去,直到能基本确定 问题根源为止,不过,这里有个指导性的 解决思路。
我们需要去查看 LMON 的trace 文件
On the evicting instance we will see something like:
kjxgrrcfgchk: Initiating reconfig, reason 3
*** 2022-11-20 18:49:29.559
kjxgmrcfg: Reconfiguration started, reason 3
重点关注 reason n 这个数字,因为 每个 reason 基本上对应不同的 错误内容:
Reason 0 = No reconfiguration
Reason 1 = The Node Monitor generated the reconfiguration.
Reason 2 = An instance death was detected.
Reason 3 = Communications Failure
Reason 4 = Reconfiguration after suspend
这里,介绍下 reason 1,2,3
Reason 1 一般是由于 增加或删除rac 节点成员产生的,一般情况下,不会产生 reason 的问题。
Reason 2 一般是由于
a) NTP (Time changes on cluster) - usually on Linux, Tru64, or IBM AIX
b) Network Problems (SAN).
c) Resource Starvation (CPU, I/O, etc..)
d) An Oracle bug.
这个错误没有明显的 判断标准,只能查看 各个 日志来判断可能引起的原因
Reason 3 一般是由于
a) Network Problems.
b) Resource Starvation (CPU, I/O, etc..)
c) Severe Contention in Database.
d) An Oracle bug.
这个错误很可能是由于节点间的通信造成的,所以,首先先看看节点间的通信是否有问题。