您的位置:首页 > 其它

11g R2 RAC客户端配置balance及TAF

2012-06-26 22:17 393 查看
前面分别在客户端配置过

负载均衡:/article/9903822.html

TAF: /article/9903823.html

现在实现在客户端同时配置负载均衡和TAF。

service_name:racdb

1、在客户端的tnsnames.ora文件中添加如下内容:

racdb =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.252.75)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = racdb)
(INSTANCE_NAME = racdb1)
(FAILOVER_MODE=(TYPE=select)(METHOD=basic)(RETRIES=4)(DELAY=1))
)
)
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.252.76)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = racdb)
(INSTANCE_NAME = racdb2)
(FAILOVER_MODE=(TYPE=select)(METHOD=basic)(RETRIES=4)(DELAY=1))
)
)
(LOAD_BALANCE = yes)
)


2、验证负载均衡:

打开第1个sqlplus

SQL> conn terry/terry@racdb
已连接。
SQL> show parameter instance_name

NAME                 TYPE          VALUE
-------------------  ------------  ---------------
instance_name        string        racdb1
SQL>

打开第2个sqlplus:

SQL> conn terry/terry@racdb
已连接。
SQL> show parameter instance_name

NAME                 TYPE          VALUE
-------------------  ------------  ---------------
instance_name        string        racdb2
SQL>


打第3个sqlplus:

SQL> conn terry/terry@racdb
已连接。
SQL> show parameter instance_name

NAME                 TYPE          VALUE
-------------------  ------------  ---------------
instance_name        string        racdb2
SQL>


打开第4个sqlplus:

SQL> conn terry/terry@racdb
已连接。
SQL> show parameter instance_name

NAME                 TYPE          VALUE
-------------------  ------------  ---------------
instance_name        string        racdb1
SQL>

可以看出在两个节点间根据空闲情况进行了近似轮巡的方式连接。

3、验证TAF:

根据上面的连接,其中两个连接到了实例racdb1,有两个连接到了实例racdb2,现将实例racdb2停掉。

[oracle@rac121 ~]$ srvctl stop instance -d racdb -i racdb2 -o immediate
[oracle@rac121 ~]$ srvctl status database -d racdb
Instance racdb1 is running on node rac121
Instance racdb2 is not running on node rac122
[oracle@rac121 ~]$


4、查看连接到实例racdb2的连接的情况 :

SQL>conn terry/terry@racdb
已连接。
SQL> show parameter instance_name

NAME             TYPE           VALUE
--------------   ------------   ---------
instance_name    string         racdb2
SQL> show parameter instance_name

NAME             TYPE           VALUE
--------------   ------------  ----------
instance_name    string        racdb1
SQL> select sid from v$mystat where rownum=1;
SID
----------
85
SQL>


另一个连接到racdb2实例的节点:

SQL>conn terry/terry@racdb
已连接。
SQL> show parameter instance_name

NAME             TYPE           VALUE
--------------   ------------   ---------
instance_name    string         racdb2
SQL> show parameter instance_name

NAME             TYPE           VALUE
--------------   ------------  ----------
instance_name    string        racdb1
SQL> select sid from v$mystat where rownum=1;

SID
----------
100

SQL>


很显然,实例racdb2出问题的情况下,实例racdb1接管了连接,保证业务的正常运行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: