科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道客户端RAC负载均衡配置代码(1)

客户端RAC负载均衡配置代码(1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

文章摘要:本文详细介绍了RAC负载均衡配置的代码内容,主要是针对客户端的。当前,无论在企业网、园区网还是在广域网上,即使按照当时最优配置建设的网络,业务量的发展都超出了过去..

来源:ZDNet网络频道 2010年4月22日

关键字: 负载均衡 网络

  • 评论
  • 分享微博
  • 分享邮件

  文章摘要:本文详细介绍了RAC负载均衡配置的代码内容,主要是针对客户端的。那么我们首先要了解当前数据库版本和其他信息然后才能进行设置。

  熟悉Oracle数据库的朋友们应该都清楚RAC的负载均衡分为两种。那么现在,我们针对其中一种——客户端RAC负载均衡配置进行一个全面具体的介绍。文中包含了主要的配置代码,希望通过介绍,能让大家清楚配置过程。稍后我们还会介绍RAC服务器负载均衡配置。

  负载均衡是指连接的负载均衡?RAC的负载均衡主要是指新会话连接到RAC数据库时,如何判定这个新的连接要连到哪个节点进行工作?在RAC中,负载均衡分为两种,一种是基于客户端连接的,另外一种是基于服务器端的?

  客户端RAC负载均衡配置

  1?当前服务器中的数据库版本如下:

  SQL> select * from v$version;

  BANNER

  ----------------------------------------------------------------

  Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod

  PL/SQL Release 10.2.0.1.0 - Production

  CORE 10.2.0.1.0 Production

  TNS for Linux: Version 10.2.0.1.0 - Production

  NLSRTL Version 10.2.0.1.0 - Production

  2?在客户端的tnsnames.ora的配置中,只要连接的是整个数据库的服务名,不是实例名?

  在服务器端查看RAC数据库的service_names:

  SQL> show parameter service_names

  NAME TYPE VALUE

  ------------------------------------ ----------- ------------------------------

  service_names string RACDB.chenxu.yo2.cn

  SQL>

  编辑推荐

  负载均衡技术基础专题

  当前,无论在企业网、园区网还是在广域网上,即使按照当时最优配置建设的网络,业务量的发展都超出了过去..

  文章摘要:本文详细介绍了RAC负载均衡配置的代码内容,主要是针对客户端的。那么我们首先要了解当前数据库版本和其他信息然后才能进行设置。

  3?在客户端配置TNS:

  客户端RAC负载均衡配置相对简单,只需要在tnsnames.ora中添加LOAD_BALANCE=ON这么一个选项即可?

  RACDB =

  (DESCRIPTION =

  (ADDRESS_LIST =

  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.170)(PORT = 1521))

  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.171)(PORT = 1521))

  (LOAD_BALANCE = on)

  )

  (CONNECT_DATA =

  (SERVICE_NAME = racdb.chenxu.yo2.cn)

  )

  )

  配置TNS中的HOST值是服务器端RAC配置中的虚拟IP即VIP,如下:

  [root@NODE01 admin]# more /etc/hosts

  # Do not remove the following line, or various programs

  # that require network functionality will fail.

  127.0.0.1 localhost.localdomain localhost

  ::1 localhost6.localdomain6 localhost6

  192.168.1.180 node01

  192.168.1.181 node02

  192.168.1.170 vip01

  192.168.1.171 vip02

  10.10.10.1 priv01

  10.10.10.2 priv02

  4?在客户端测试:

  开启sqlplus_1:

  SQL> conn sys/chenxu@racdb as sysdba

  已连接?

  SQL>

  SQL> show parameter instance_name

  NAME TYPE VALUE

  ------------------------------------ ----------- ------------------------------

  instance_name string RACDB2

  SQL>

  SQL> select instance_name from gv$instance;

  INSTANCE_NAME

  ----------------

  RACDB1

  RACDB2

  编辑推荐

  负载均衡技术基础专题

  当前,无论在企业网、园区网还是在广域网上,即使按照当时最优配置建设的网络,业务量的发展都超出了过去..

  开启sqlplus_2:

  SQL> conn sys/chenxu@racdb as sysdba

  已连接?

  SQL> show parameter instance_name

  

  NAME TYPE VALUE

  ------------------------------------ ----------- ------------------------------

  instance_name string RACDB1

  开启sqlplus_3:

  SQL> conn sys/chenxu@racdb as sysdba

  已连接?

  SQL>

  SQL> show parameter instance_name

  

  NAME TYPE VALUE

  ------------------------------------ ----------- ------------------------------

  instance_name string RACDB2

  开启sqlplus_4:

  SQL> conn sys/chenxu@racdb as sysdba

  已连接?

  SQL> show parameter instance_name

  

  NAME TYPE VALUE

  ------------------------------------ ----------- ------------------------------

  instance_name string RACDB1

  5?总结

  这样当客户端连接RAC数据库时,会随机在TNS里面挑个监听地址进行连接?在Oracle 10g以前,假如有节点宕机或者类似事故时,客户端可能还是选择连接到这个节点,这样会发生较长时间的TCP等待超时?而在10g以后,由于VIP和FAN的引入,这样的情况可以得到很大程度的改善?客户端RAC负载均衡配置是相对简单的,客户端负载均衡在通常情况下能够较好地工作,但是由于连接是在客户端随机发起的,这样客户端并不知道RAC各节点的负荷及连接数情况,有可能负荷大的节点还会源源不断地增加新的连接,导致RAC节点无法均衡工作?

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章