广告
返回顶部
首页 > 资讯 > 数据库 >ORACLE RAC均衡负载
  • 709
分享到

ORACLE RAC均衡负载

2024-04-02 19:04:59 709人浏览 八月长安
摘要

    oracle集群数据库有些时候并没有实现自动负载均衡,基本所有业务都在某一个节点上,所以容易造成某一个节点宕机的情况,针对这种情况我们就需要手动为期配置负载均

    oracle集群数据库有些时候并没有实现自动负载均衡,基本所有业务都在某一个节点上,所以容易造成某一个节点宕机的情况,针对这种情况我们就需要手动为期配置负载均衡。针对负载均衡配置有在服务器端和客户端两种入手方法(但是我发现主要还是服务器端配置效果更明显)

    一、服务器端配置

      1、首先要在每个节点服务器上tnsnames.ora文件进行如下,注意看红色部分,而且我建议在HOST后面的值直接写IP地址,如果写hosts文件的主机名的话,有可能会出现TNS连接超时的情况。

RACDB =

  (DESCRIPTION =

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

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

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

    (LOAD_BALANCE = yes)                                            

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = RACDB)

    )

  )

 

LISTENERS_RACDB =

  (ADDRESS_LIST =

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

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

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

  )


      2、任意一个节点执行如下操作。在初始化参数中设置参数remote_listeners

   

sql> conn system/admin@racdb 

已连接。

SQL> show parameter remote_listener

 

NAME                                 TYPE        VALUE

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

remote_listener                      string                                        

SQL>

SQL> alter system set remote_listener='LISTENERS_RACDB' sid='*';                   

#(reset命令可以撤销设置,恢复默认值)                                          

系统已更改。

 show parameter remote_listener

 

NAME                                 TYPE        VALUE

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

remote_listener                      string      LISTENERS_RACDB                    


    3、现在可以看下监听信息,正确配置参数后,通过lsnrctl status命令看到在监听启动以后,可以看到监听器上有2个instance。

[grid@node01 bin]# lsnrctl status

 

LSNRCTL for linux: Version 10.2.0.4.0 - Production on 18-DEC-2014 05:40:08

 

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

 

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

STATUS of the LISTENER

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

Alias                     LISTENER_NODE01

Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production

Start Date                18-DEC-2014 00:18:07

Uptime                    0 days 15 hr. 22 min. 1 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /orac/orahome/oracle/product/11.2.0/db_1/network/admin/listener.ora

Listener Log File         /orac/orahome/oracle/product/11.2.0/db_1/network/log/listener_node01.log

Listening Endpoints Summary...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.230.153)(PORT=1521)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.230.154)(PORT=1521)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.230.155)(PORT=1521)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))

Services Summary...

Service "+ASM" has 1 instance(s).

  Instance "+ASM1", status BLOCKED, has 1 handler(s) for this service...

Service "+ASM_XPT" has 1 instance(s).

  Instance "+ASM1", status BLOCKED, has 1 handler(s) for this service...

Service "RACDB" has 2 instance(s).

  Instance "RACDB1", status READY, has 2 handler(s) for this service...

  Instance "RACDB2", status READY, has 1 handler(s) for this service...

Service "RACDBXDB" has 2 instance(s).

  Instance "RACDB1", status READY, has 1 handler(s) for this service...

  Instance "RACDB2", status READY, has 1 handler(s) for this service...

Service "RACDB_XPT" has 2 instance(s).

  Instance "RACDB1", status READY, has 2 handler(s) for this service...

  Instance "RACDB2", status READY, has 1 handler(s) for this service...

The command completed successfully



二、客户端配置   


 在每个客户端或者JDBC的程序都用LOAD_BALANCE = yes的参数即可

                 客户端的tnsnames.ora如下修改

                   

RAC_DB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.230.153)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.230.154)(PORT = 1521))
     (LOAD_BALANCE = yes)
      (FaiLOVER = on)
    )
    (CONNECT_DATA =
      (SERVICE_NAME = RAC_DB)
     (FAILOVER_MODE = (TYPE = SELECT)
                       (METHOD = BASIC)
                       (RETRIES = 20)
                       (DELAY = 10)
      )
    )
  )

标红的这几个参数代表意义:

LOAD_BALANCE=YES 表示的负载均衡,而且这个应该是客户端的负载均衡,就是随机的进行连接分配。


FAILOVER =ON 表示的是客户端连接时的故障转移。也就是说在建立会话的时候如果发现一个节点出现故障就去检测另外的节点。默认就是开启的。但是现在ORACLE一般使用TAF,就是说即使在连接期间出现故障,也会转移到其他节点继续操作
failover_mode 有几个参数TYPE MOTHOD RETRIES DELAY。
mothod 取值 basic preconnect(前者是在感知了错误才建立到其他节点的连接,后者是预先建立到其他节点的连接)
TYPE 取值 SELECT或 SESSION(前者在故障节点的查询结果不会抛弃,在新节点继续余下的操作,后者就是重新进行操作,抛弃以前的操作)
retries就是重试次数
DELAY 重试间隔时间,也可以使用SERVICE来做服务端的 TAF。


您可能感兴趣的文档:

--结束END--

本文标题: ORACLE RAC均衡负载

本文链接: https://www.lsjlt.com/news/42905.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ORACLE RAC均衡负载
        oracle集群数据库有些时候并没有实现自动负载均衡,基本所有业务都在某一个节点上,所以容易造成某一个节点宕机的情况,针对这种情况我们就需要手动为期配置负载均...
    99+
    2022-10-18
  • ORACLE 11G负载均衡测试
    Oracle 11g R2中,引入了SCAN(Single Client Access Name)的特性。该特性的好处在于,在数据库与客户端之间,添加了一层虚拟的服务层,就是所谓的SCAN IP以及SC...
    99+
    2022-10-18
  • NS3—LB(负载均衡)
      跟F5、A10、深信服等传统做负债均衡产品一样, NetScaler一般都是做基于应用的负载均衡,而对于链路的负载均衡相对来说就用的实际场景比较少,自己这边目前都是用到公司开发的Web服务器做负载均衡。  做负载均衡一般都按照以下几步部...
    99+
    2023-01-31
    负载均衡 LB
  • cpu负载均衡(python)
    chkconfig --level 3  irqbalance         off#!/usr/bin/env pythonimport socketimport fcntlimport structimport arrayimport...
    99+
    2023-01-31
    负载均衡 cpu python
  • redis如何负载均衡
    Redis是一个单线程应用程序,但它支持通过主从复制和分片来实现负载均衡。1. 主从复制:通过在Redis服务器之间设置主从关系,可...
    99+
    2023-08-30
    redis
  • 负载均衡到底是什么,负载均衡结构和流程(图)
    负载均衡到底是什么,负载均衡结构和流程(图)负载均衡,英文名Load Balance,作用是将操作分摊到多个执行单元上执行。随着如今网络流量的不断增大,服务的负载均衡是必须的,这里就来讲一讲负载均衡的结构。   &nbs...
    99+
    2023-06-04
  • IIS下的负载均衡与IIS+Nginx实现负载均衡、反向代理
    在IIS下实现负载均衡可以使用Microsoft提供的Application Request Routing(ARR)模块。ARR可...
    99+
    2023-09-01
    IIS
  • redis如何做负载均衡
    Redis本身并不支持负载均衡,但可以通过使用其他工具或技术来实现负载均衡。下面是几种常见的方法:1. 代理层负载均衡:使用代理层工...
    99+
    2023-09-09
    redis
  • JavaWeb 使用nginx负载均衡
    要使用nginx负载均衡JavaWeb应用程序,可以按照以下步骤进行操作:1. 安装和配置nginx:首先,需要在服务器上安装ngi...
    99+
    2023-09-21
    JavaWeb
  • linux有哪些负载均衡
    本篇内容介绍了“linux有哪些负载均衡”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2023-04-20
    linux
  • PHP中的负载均衡器
    负载均衡器(Load Balancer)是一种重要的技术,它可以在多个服务器之间分配请求,确保每个服务器都不会过载,并且尽可能提高系统可用性和性能。PHP是一种在Web应用程序开发中常用的编程语言,而在PHP中,使用负载均衡器可以带来很多好...
    99+
    2023-05-24
    PHP 分布式系统 负载均衡器
  • Nginx负载均衡的配置
    这篇文章主要讲解了“Nginx负载均衡的配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Nginx负载均衡的配置”吧!1.简单了解Nginx负载均衡【lo...
    99+
    2022-10-18
  • 为什么要负载均衡
    在网站和应用的访问量不断增加情况下,会使一台服务器无法满足当前的应用需求,因此需要使用多台服务器集群来解决这个问题,这时候就要用到负载均衡。具体内容如下:随着网站、应用访问量的增加,一台服务器已经不能满足应用的需求,而需要多台服务器集群,这...
    99+
    2022-10-06
  • linux负载均衡有哪些
    linux负载均衡有:1、bond,它是linux内核自带的多网卡聚合功能;2、iproute2中的多路由,使用ip命令中的nexthop选项从而实现负载均衡;3、iptables+iproute2,iptables是通过修改mark标记来...
    99+
    2022-10-22
  • lvs负载均衡是什么
    lvs负载均衡是一种能够在unix/linux平台下实现负载均衡集群功能的虚拟服务器集群系统,主要是用来将一组服务器构成一个高性能的、高可用的虚拟服务器。具体内容如下:LVS是linux virtual server的简写linux虚拟服务...
    99+
    2022-10-23
  • 详解SpringCloud的负载均衡
    目录一.什么是负载均衡 二.负载均衡的简单分类 三.为什么需要做负载均衡 四.springCloud如何开启负载均衡 五.IRule 1.RandomRule:表示随机策略,它将从服...
    99+
    2022-11-11
  • SpringCloud Ribbon负载均衡原理
    目录一、Ribbon负载均衡原理1 负载均衡原理2 负载均衡策略(IRule接口)3 Ribbon默认懒加载4 总结:Ribbon负载均衡规则、自定义、饥饿加载一、Ribbon负载均...
    99+
    2022-11-13
  • 负载均衡如何配置
    负载均衡的配置可以根据具体的需求和环境来进行调整,但通常配置的步骤如下:1. 确定负载均衡的策略: 负载均衡可以根据不同的策略来选择...
    99+
    2023-09-07
    负载均衡
  • nginx怎么做负载均衡
    nginx可以通过以下几种方式实现负载均衡:1. 基于IP Hash算法:根据客户端的IP地址将请求分配到特定的服务器上,可以保证同...
    99+
    2023-09-07
    nginx 负载均衡
  • 6种负载均衡算法
    当今的分布式系统越来越普遍,由于它们能够提供更高的灵活性和可扩展性。但是,这些系统需要处理大量的客户端请求。为了处理这些请求并提供对每个客户端的稳定和高效的服务,需要使用负载均衡算法。 以下是分布式系统中常用的负载均衡算法: &#x...
    99+
    2023-09-10
    负载均衡 java 数据库 运维 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作