oracle 10g rac 私网没设置数据库日志告警解决方法

教程发布:风哥 教程分类:ITPUX技术网 更新日期:2022-02-12 浏览学习:559

oracle 10g rac 私网没设置数据库日志告警解决方法

今天帮个网友看数据库性能问题,在检查数据库日志中,发现在启动时报以下错误信息 提示私网没设置:
WARNING: No cluster interconnect has been specified. Depending on
the communication driver configured Oracle cluster traffic
may be directed to the public interface of this machine.
Oracle recommends that RAC clustered databases be configured
with a private interconnect for enhanced security and
performance.

然后朋友通过oifcfg getif命令检查,没有私网返回值,以下为metalink 设置私网解决步骤,供参考:
To specify the interconnect information in the OCR:1) Identify the correct hostname for the private interface. This was given during the install; it is usually something like "hostname-priv". If you are not sure, look in $CRS_HOME/install/params.crs .

2) Go to /etc/hosts and identify the IP address associated with the hostnames for the private
interfaces.
For example:

[font=NSimsun]$ cat /etc/hosts
...
192.168.0.1 hostname1-priv
192.168.0.2 hostname2-priv
...

3) Run "ifconfig -a" and find the name of the interface (NIC) that has that ip address on it, and
the netmask.

For example:

[font=NSimsun]$ ifconfig -a
...
cip0: flags=10080c1 mtu 1500 index 3
inet 192.168.0.2 netmask ffffff00
...

In the example, interface name is cip0 and netmask is ffffff00.

* It should be the same interface name on both nodes.
* Your netmask will most likely be ffffff00, a.k.a. 255.255.255.0, in which case your subnet will be the first 3 sets of digits. eg. 192.168.0.0 in the example case.

If your netmask is NOT ffffff00, then your subnet may be something else than the first 3 sets of digits. You can calculate this using an IP calculator, or, more easily, you can find out what your subnet is by using oifcfg. "oifcfg iflist" calculates the subnet for you.

In the following example, interface fjqe0 has a netmask of 255.255.255.224, aka ffffffe0 :

[font=NSimsun]$ ifconfig -a
...
fjqe0: flags=1000843 mtu 1500 index 2
inet 10.141.154.41 netmask ffffffe0 broadcast 10.141.155.255
...

The netmask, 255.255.255.224, is more restrictive than 255.255.255.0. We can use oifcfg to find out what the subnet is:

[font=NSimsun]$ oifcfg iflist -p -n
fjqe0 10.141.154.32 PRIVATE 255.255.255.224
...

oifcfg iflist shows "10.141.154.32". This is the subnet for fjqe0.

4) Once you have determined the interface and the subnet, run oifcfg setif, as the Unix user who owns the CRS software. The syntax is:

$ORA_CRS_HOME/bin/oifcfg setif -global /:cluster_interconnect

For example, to use interface cip0 from the first example above, which has a subnet of 192.168.0.0 :

[font=NSimsun]$ORA_CRS_HOME/bin/oifcfg setif -global cip0/192.168.0.0:cluster_interconnect

To use interface fjqe0 from the second example above, which has a subnet of 10.141.154.32:

[font=NSimsun]$ORA_CRS_HOME/bin/oifcfg setif -global fjqe0/10.141.154.32:cluster_interconnect

Note that you do not use the ip address of the interface (this varies from node to node), but the [i]name and the [i]subnet of the interface (this should be the same for all nodes).

5) The new setting will take effect on each instance the next time you restart that instance.
All instances should use the same interface for cluster communications, so it is best to restart all the instances once you have made this change.

If you are using ASM, you should restart the ASM instances at the same time, since ASM instances also use the cluster interconnect for RAC communications.

本文标签:
网站声明:本文由风哥整理发布,转载请保留此段声明,本站所有内容将不对其使用后果做任何承诺,请读者谨慎使用!
【上一篇】
【下一篇】