这几天折腾Double E,今天Exadata上的配置的工作总算做完了(还差客户提供数据后,进行加载和应用测试)。
一开始做的时候,容易出错的步骤是:
srvctl add network -k 2 -S 192.168.10.0/255.255.255.0/bondib0
这里,如果interconncet connect使用192.168.10.0网段,子网掩码是255.255.255.0连接,那么这个命令没有问题,但是如果缺省配置excel中是252的,因此配置double e尤其要注意,这里需要使用:
srvctl add network -k 2 -S 192.168.8.0/255.255.252.0/bondib0
可以通过如下命令计算;
[root@dm01db02 ~]# ipcalc -bnm 192.168.10.1 255.255.252.0
NETMASK=255.255.252.0
BROADCAST=192.168.11.255
NETWORK=192.168.8.0
[root@dm01db02 ~]#
后面问题不大,我是用netca创建LISTENER_IB(使用1522端口)
(这个有问题,后来发现,需要使用命令自己创建LISTENER_IB,用netca建立的listener走的都是TCP协议),
解决方法:
srvctl stop listener -l LISTENER_IB
srvctl remove listener -l LISTENER_IB
srvctl add listener -l LISTENER_IB -k 2 -p TCP:1522,/SDP:1522
srvctl start listener -l LISTENER_IB
下面是积累错误和修复方法:
第1类错误:IBLOCAL和IBREMORE配置错误:
============================================================
SQL> alter system set listener_networks='((NAME=network2) (LOCAL_LISTENER=LISTENER_IBLOCAL)(REMOTE_LISTENER=LISTENER_IBREMOTE))', '((NAME=network1)(LOCAL_LISTENER=LISTENER_IPLOCAL)(REMOTE_LISTENER=LISTENER_IPREMOTE))' scope=both;
alter system set listener_networks='((NAME=network2) (LOCAL_LISTENER=LISTENER_IBLOCAL)(REMOTE_LISTENER=LISTENER_IBREMOTE))', '((NAME=network1)(LOCAL_LISTENER=LISTENER_IPLOCAL)(REMOTE_LISTENER=LISTENER_IPREMOTE))' scope=both
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00119: invalid specification for system parameter LISTENER_NETWORKS
ORA-00137: invalid LISTENER_NETWORKS specification with NAME=network2
ORA-00138: all addresses specified for attribute LOCAL_LISTENER are invalid
ORA-00132: syntax error or unresolved network name 'LISTENER_IBLOCAL'
ORA-00132: syntax error or unresolved network name 'LISTENER_IBREMOTE'
ORA-00132: syntax error or unresolved network name 'LISTENER_IPLOCAL'
ORA-00132: syntax error or unresolved network name 'LISTENER_IPREMOTE'
SQL>
修改tnsnames.ora:
LISTENER_IBREMOTE=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dm01db02-ibvip.bj.lunar.com)(PORT = 1522))
)
LISTENER_IBLOCAL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dm01db01-ibvip.bj.lunar.com)(PORT = 1522))
(ADDRESS = (PROTOCOL = SDP)(HOST = dm01db02-ibvip.bj.lunar.com)(PORT = 1522))
)
第2类错误:IBLOCAL和IBREMORE配置错误:
============================================================
SQL> alter system set listener_networks='((NAME=network2) (LOCAL_LISTENER=LISTENER_IBLOCAL)(REMOTE_LISTENER=LISTENER_IBREMOTE))', '((NAME=network1)(LOCAL_LISTENER=LISTENER_IPLOCAL)(REMOTE_LISTENER=LISTENER_IPREMOTE))' scope=both;
alter system set listener_networks='((NAME=network2) (LOCAL_LISTENER=LISTENER_IBLOCAL)(REMOTE_LISTENER=LISTENER_IBREMOTE))', '((NAME=network1)(LOCAL_LISTENER=LISTENER_IPLOCAL)(REMOTE_LISTENER=LISTENER_IPREMOTE))' scope=both
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00119: invalid specification for system parameter LISTENER_NETWORKS
ORA-00137: invalid LISTENER_NETWORKS specification with NAME=network1
ORA-00138: all addresses specified for attribute LOCAL_LISTENER are invalid
ORA-00130: invalid listener address
'(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dm01db01-vip.bj.lunar.com)(PORT=1521))
)'
SQL>
修改tnsnames.ora:
LISTENER_IPLOCAL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dm0101-vip.bj.lunar.com)(PORT = 1521))
)
LISTENER_IPREMOTE=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dm01-scan.bj.lunar.com)(PORT = 1521))
)
第3类错误:节点2的信息报错,讲节点2的照着节点的tnsnames.ora修改,
注意凡是dm01db01和dm01db02的顺序
============================================================
这个错误表示节点2的tnsnames.ora还不行,但是也说明节点1的tnsname.ora已经好了:
SQL> alter system set listener_networks='((NAME=network2) (LOCAL_LISTENER=LISTENER_IBLOCAL)(REMOTE_LISTENER=LISTENER_IBREMOTE))', '((NAME=network1)(LOCAL_LISTENER=LISTENER_IPLOCAL)(REMOTE_LISTENER=LISTENER_IPREMOTE))' scope=both;
alter system set listener_networks='((NAME=network2) (LOCAL_LISTENER=LISTENER_IBLOCAL)(REMOTE_LISTENER=LISTENER_IBREMOTE))', '((NAME=network1)(LOCAL_LISTENER=LISTENER_IPLOCAL)(REMOTE_LISTENER=LISTENER_IPREMOTE))' scope=both
*
ERROR at line 1:
ORA-32008: error while processing parameter update at instance gljcdb2
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00119: invalid specification for system parameter LISTENER_NETWORKS
ORA-00137: invalid LISTENER_NETWORKS specification with NAME=network2
ORA-00138: all addresses specified f
SQL>