没有f5 没有域名解析,dg如何实现简单访问-凯发app官方网站

凯发app官方网站-凯发k8官网下载客户端中心 | | 凯发app官方网站-凯发k8官网下载客户端中心
  • 博客访问: 3502564
  • 博文数量: 718
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 7790
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(718)

文章存档

2024年(4)

2023年(74)

2022年(134)

2021年(238)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

最近访客
相关博文
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·

分类: oracle

2021-12-08 19:44:28


单机的主备库,如果没有集群软件,当主备切换后,客户端连接串往往需要修改,有条件的地方将ip设置为一个域名,例如 hrdb.huawei.com(仅是举例,如有雷同纯属巧合),然后切换dg,网络方面将这个域名指向备库ip(或f5分发到备库ip),客户端不用改动就可以继续访问数据库了。没有域名解析或f5怎么办?

用一个即将淘汰的技术 services_name,亲测oracle 19.9有效


  1. 创建一个服务:
  2. exec dbms_service.create_service(service_name=>'appservice',network_name=>'appservice')

  3. 连接串这样设置:
  4. orcl =
  5.   (description_list =
  6.        (failover = on)
  7.        (load_balance = off)
  8.        (description =
  9.          (address_list =
  10.             (address = (protocol = tcp)(host = bjdb)(port = 1521))
  11.         )
  12.        (connect_data =
  13.             (service_name = appservice)
  14.         )
  15.     )
  16.        (description =
  17.             (address_list =
  18.             (address = (protocol = tcp)(host = shdb)(port = 1521))
  19.           )
  20.          (connect_data =
  21.             (service_name = appservice)
  22.          )
  23.        )
  24.   )
  25.   
  26. 主库创建触发器:
  27. create or replace trigger service_name_trg
  28.   after db_role_change on database
  29. declare
  30.   role varchar(30);
  31. begin
  32.   select database_role into role from v$database;
  33.   if role = 'primary' then
  34.     dbms_service.start_service('appservice');
  35.   else
  36.     dbms_service.stop_service('appservice');
  37.   end if;
  38. end;
  39. /

  40. 重启主库

  41. 客户端测试
  42. sqlplus scott/tiger@orcl
  43. select host_name from v$instance; --连接到bjdb  北京
  44. 切换到备库
  45. sqlplus scott/tiger@orcl
  46. select host_name from v$instance; --连接到shdb  上海

  47. 透明,当然会话会中断,客户端需要能自动重新连接(tomcat连接池基本功能)。

官方推荐的技术 tac



通过 srvctl 实现配置(开始找不同)

  1. --basic service
  2. srvctl add service -db mydb -service myservice
  3. –preferred inst1 -available inst2 -pdb mypdb -notification true
  4. -drain_timeout 300 -stopoption immediate -role primary

  5. --tac
  6. $ srvctl add service -db mydb -service tacservice
  7. -pdb mypdb –preferred inst1 -available inst2
  8. -failover_restore auto -commit_outcome true
  9. -failovertype auto -replay_init_time 600
  10. -retention 86400 -notification true
  11. -drain_timeout 300 -stopoption immediate -role primary

  12. --ac
  13. $ srvctl add service -db mydb -service acservice
  14. -pdb mypdb -preferred inst1 -available inst2
  15. -failover_restore level1 -commit_outcome true
  16. -failovertype transaction -session_state dynamic
  17. -replay_init_time 600 -retention 86400 -notification true
  18. -drain_timeout 300 -stopoption immediate -role primary
最好是rac  ->  rac的adg,连接串例子
引自:bilibili.com/video/bv1ax4y1u7zm?spm_id_from=333.999.0.0

检查服务状态

  1. set pagesize 60
  2. set lines 120
  3. col service_name format a30 trunc heading "service"
  4. break on con_id skip1
  5. col total_requests format 999,999,9999 heading "requests"
  6. col total_calls format 9,999,9999 heading "calls in requests"
  7. col total_protected format 9,999,9999 heading "calls protected"
  8. col protected format 999.9 heading "protected %"
  9. select con_id, service_name, total_requests,
  10. total_calls,total_protected,total_protected*100/nullif(total_calls,0) as
  11. protected
  12. from(
  13. select * from
  14. (select a.con_id, a.service_name, c.name,b.value
  15. from gv$session a, gv$sesstat b, gv$statname c
  16. where a.sid = b.sid
  17. and a.inst_id = b.inst_id
  18. and b.value != 0
  19. and b.statistic# = c.statistic#
  20. and b.inst_id = c.inst_id
  21. and a.service_name not in ('sys$users','sys$background'))
  22. pivot(
  23. sum(value)
  24. for name in ('cumulative begin requests' as total_requests, 'cumulative end
  25. requests' as total_end_requests, 'cumulative user calls in requests' as
  26. total_calls, 'cumulative user calls protected by application continuity' as
  27. total_protected) ))
  28. order by con_id, service_name;


参考:oracle.com/goto/ac
阅读(1053) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
")); function link(t){ var href= $(t).attr('href'); href ="?url=" encodeuricomponent(location.href); $(t).attr('href',href); //setcookie("returnouturl", location.href, 60, "/"); }
网站地图