oracle9 taf 测试一例

上一篇 / 下一篇  2008-05-23 23:09:50 / 个人分类:Oracle

为了配合生产系统高可用性测试,今天对Oracle9206进行taf配置,总结起来比较简单:

1:server tnsnames.ora
LISTENERS_odmd =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.1)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.2)(PORT = 1521))
    )
  )

# For kdond1 only
LISTENER_odmd1 =
  (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.1)(PORT = 1521))
  )
 
# For kdond2 only
LISTENER_odmd2 =
  (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.2)(PORT = 1521))
   )

2:init*.ora
 local_listener                       string      listener_odmd2
remote_listener                      string      LISTENERS_ODMD

3:client tnsnames.ora
odmd1 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = odmd)
      (INSTANCE_NAME = odmd1)
    )
  )

odmd2 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.2)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = odmd)
      (INSTANCE_NAME = odmd2)
    )
  )
failover =
  (DESCRIPTION =
    (enable=broken)
    (failover = on)
    (load_balance=off)
    (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.1)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 133.0.0.2)(PORT = 1521))
    (CONNECT_DATA =
      (SERVICE_NAME = odmd)
      (instance_NAME=odmd2)
      (failover_mode=(type=select)(method=basic)(backup=odmd1))
    )
  )

4:测试select
connecttaf_test/taf_test@failover;
select instance_name from v$instance;
 
select sum(row_cnt) from (
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
union all
select count(*) row_cnt from dba_extents
);

5:update 语句,返回结果
SQL> update dba_extents_20080523 set bytes=bytes+1;
update dba_extents_20080523 set bytes=bytes+1
*
ERROR at line 1:
ORA-25408: can not safely replay call

6:总结
tnsnames.ora 中failover 的每个参数至关重要,尤其是backup和instance_name 须认真使用。


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-09-06  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 549
  • 日志数: 34
  • 建立时间: 2008-04-05
  • 更新时间: 2008-08-18

RSS订阅

Open Toolbar