实验目的和步骤
测试双节点RAC,在其中一个节点关闭的时候,新的连接自动连接到另一个节点
同时测试已经连接到的节点是否可以自动转移到另一个节点上面,答案是不会,因为性质决定的
测试的客户机 tnsnames.ora 内容如下,注意其中的ADDRESS有两个HOST,而且增加了一个参数LOAD_BALANCE = yes
曾经有人说还需要增加一个参数(FAILOVER = on),实际上不需要,因为这个参数默认就是ON
RACDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.201)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.202)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = RACDB)
)
)
之前已经建立了一个test2的用户,并赋予了DBA权限
步骤一,登录数据库
C:Documents and Settingsmaoji>sqlplus test2/test2@racdb
SQL*Plus: Release 10.2.0.1.0 - Production on ??? 11? 2 15:44:30 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
RACDB2
SQL>
应该是随机分配数据库连接,上面显示连接到NODE2的RACDB2数据库了
步骤二,关闭其中一个节点
因为上面连接到了 RACDB2 这个节点,所以我们就关闭RACDB2这个节点
SQL> conn / as sysdba
Connected.
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
RACDB2
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>
步骤三,测试第一个连接是否还正常,结果是不正常
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
RACDB2
SQL> select instance_name from v$instance;
select instance_name from v$instance
*
第 1 行出现错误:
ORA-03113: 通信通道的文件结束
SQL> select * from tbl_test;
ERROR:
ORA-03114: 未连接到 ORALCE
SQL>
步骤四,测试新连接是否自动load balance,结论是成功了
C:Documents and Settingsmaoji>sqlplus test2/test2@racdb
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 11月 2 15:53:52 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
RACDB1
SQL>
[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10771/viewspace-1045731/,如需转载,请注明出处,否则将追究法律责任。