热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

OracleRAC负载均衡与local_listener、remote_listener两个参数的配置关系

ORACLERAC负载均衡与local_listener、remote_listener两个参数的配置关系RAC的负载均衡主要由客户端和服务器端两种实现方式。

ORACLE RAC 负载均衡与local_listener、remote_listener两个参数的配置关系 RAC的负载均衡主要由客户端和服务器端两种实现方式。

Oracle RAC 负载均衡与local_listener、remote_listener两个参数的配置关系
RAC的负载均衡主要由客户端和服务器端两种实现方式。
1,客户端的实现,直接在tnsnames.ora中配置LOAD_BALANCE参数来实现。默认值是NO
clinet_LB =
(DESCRIPTION =
(LOAD_BALANCE = YES)
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.243)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.244)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.245)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.246)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = srv_epm1)
)
)
2,服务器端的负载均衡LB设置。主要是通过两个初始化参数local_listener、remote_listener来实现的。通过这两个参数,oracle分别向这两个参数指向的listener进行注册,这样,listener就能知道各个服务的状态,,进而进行连接分发。
11gr2版本,这两个参数默认设置为如下


SQL> show parameter listener

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
listener_networks string
local_listener string (DESCRIPTION=(ADDRESS_LIST=(AD
DRESS=(PROTOCOL=TCP)(HOST=10.4
.124.244)(PORT=1521))))
remote_listener string dtydb-scan2:1521

由于以上设置,数据库实例分别向local_listener和remote_listener进行注册。

本地listener只注册了+ASM2和epmdb2两个实例

LSNRCTL> set current_listener LISTENER
Current Listener is LISTENER
LSNRCTL> service
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM2", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:10765 refused:0 state:ready
LOCAL SERVER
Service "epmdb" has 1 instance(s).
Instance "epmdb2", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:10 refused:0 state:ready
LOCAL SERVER
The command completed successfully

SCAN listener注册了所有数据库实例默认service和运行在epmdb1实例上的服务srv_epm1
查看服务注册情况,SCAN

LSNRCTL> set current_listener LISTENER_SCAN1
Current Listener is LISTENER_SCAN1
LSNRCTL> service
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))
Services Summary...
Service "epmdb" has 3 instance(s).
Instance "epmdb1", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.4.124.243)(PORT=1521)))
Instance "epmdb2", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.4.124.244)(PORT=1521)))
Instance "epmdb3", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:4 refused:0 state:ready
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.4.124.245)(PORT=1521)))
Service "srv_epm1" has 1 instance(s).
Instance "epmdb1", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.4.124.243)(PORT=1521)))
The command completed successfully

tnsnames.ora的配置如下
tydb_srv_epm1 =
(DESCRIPTION =
(LOAD_BALANCE = NO)
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.243)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.244)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.245)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.246)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = epmdb)
)
)
epmdb_scan =
(DESCRIPTION =
(LOAD_BALANCE = NO)
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.4.124.230)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = epmdb)
)
)


推荐阅读
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • Nginx Buffer 机制引发的下载故障
    Nginx ... [详细]
  • 护墙_搭建LVS负载均衡NAT和DR模式
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了搭建LVS负载均衡NAT和DR模式相关的知识,希望对你有一定的参考价值。 ... [详细]
  • [翻译]微服务设计模式5. 服务发现服务端服务发现
    服务之间需要互相调用,在单体架构中,服务之间的互相调用直接通过编程语言层面的方法调用就搞定了。在传统的分布式应用的部署中,服务地 ... [详细]
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
  • ZooKeeper 学习
    前言相信大家对ZooKeeper应该不算陌生。但是你真的了解ZooKeeper是个什么东西吗?如果别人面试官让你给他讲讲ZooKeeper是个什么东西, ... [详细]
  • 抖音服务器带宽有多大,才能供上亿人同时刷?
    最近看到一个有意思的提问:抖音服务器带宽有多大,为什么能够供那么多人同时刷?今天来给大家科普一下。 ... [详细]
  • LVS-DR直接路由实现负载均衡示例
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • pm2常用的命令用法介绍pm2是一个带有负载均衡功能的Node应用的进程管理器.当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, ... [详细]
author-avatar
呵呵傻乎乎宝宝
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有