RAC监听与tns
监听:
个人理解:本来想通过scan ip来配置tns总数报12545,后来通过vip来配置tns
11g rac的监听在安装时创建,由grid用户管理监听,listener.ora文件在$ORACLE_HOME/network/admin目录中。rac中有asm实例和数据库实例。
[grid@node1 ~]$ sqlplus "/as sysasm"
SQL> show parameter listen;
NAME TYPE VALUE
---------------- ----------- ------------------------------
listener_networks string
local_listener string (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node1-vip)(PORT=1521))))
remote_listener string
[grid@node2 ~]$ sqlplus "/as sysasm"
SQL> show parameter listen;
NAME TYPE VALUE
---------------- ----------- ------------------------------
listener_networks string
local_listener string (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node2-vip)(PORT=1521))))
remote_listener string
查看监听状态:
节点1:
[grid@node1 ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 18-JAN-2016 06:09:17
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 18-JAN-2016 00:15:53
Uptime 0 days 5 hr. 53 min. 23 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/node1/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.201)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM1", status READY, has 1 handler(s) for this service...
Service "RACDB" has 1 instance(s).
Instance "RACDB1", status READY, has 1 handler(s) for this service...
Service "RACDBXDB" has 1 instance(s).
Instance "RACDB1", status READY, has 1 handler(s) for this service...
(红色部分,如果在数据库实例中的host没有配置vip地址就不会显示)
The command completed successfully
节点2:
[grid@node2 ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 18-JAN-2016 06:10:51
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 18-JAN-2016 00:15:54
Uptime 0 days 5 hr. 54 min. 59 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/node2/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.202)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM2", status READY, has 1 handler(s) for this service...
Service "RACDB" has 1 instance(s).
Instance "RACDB2", status READY, has 1 handler(s) for this service...
Service "RACDBXDB" has 1 instance(s).
Instance "RACDB2", status READY, has 1 handler(s) for this service...
The command completed successfully
查看oracle实例的listener配置:
[oracle@node2 ~]$ sqlplus "/as sysdba"
SQL> show parameter listen;
NAME TYPE VALUE
----------------- ----------- ------------------------------
listener_networks string (这个位置不能配置scan ip,试了不可行,本来想通过scan ip配置tns)
local_listener string (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node2-vip)(PORT=1521))))
remote_listener string rac-scan:1521
[oracle@node1 ~]$ sqlplus "/as sysdba"
SQL> show parameter listen;
NAME TYPE VALUE
----------------- ----------- ------------------------------
listener_networks string
local_listener string (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node1-vip)(PORT=1521))))
remote_listener string rac-scan:1521
可通过下面语句修改参数:
alter system set local_listener = '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node1-vip)(PORT=1521))))' scope=both sid='RACDB1';
alter system register;
tns:
第一种:
rac =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.201)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.202)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = RACDB)
)
)
这种情况,连接的实例挂掉,会断开重新连接另一个实例。
第二种:
TAF(Transparent Application Failover):
11g文档位置:Database Administration->Network Management->Local Naming Parameters(tnsname.ora)->
搜索retries ->Oracle Database Net Services Administrator's Guide
Basic:
rac=
(DESCRIPTION=
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.201)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.202)(PORT = 1521))
)
(LOAD_BALANCE = on)
(CONNECT_DATA=
(SERVICE_NAME=RACDB)
(FAILOVER_MODE=
(TYPE=select) –有session 和select (select 查询1w条,返回1k后挂掉,重新连接返回9k,session重新查询)两种
(METHOD=basic)
(RETRIES=20)
(DELAY=15)
)
)
)
--如果连接的实例挂掉,重新建立连接,不会先断开。
Preconnect:
rac1=
(DESCRIPTION=
(ADDRESS=
(PROTOCOL=tcp)
(HOST=192.168.56.201)
(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=RACDB)
(INSTANCE_NAME=RACDB1)
(FAILOVER_MODE=
(BACKUP=rac2)
(TYPE=select)
(METHOD=preconnect))))
rac2=
(DESCRIPTION=
(ADDRESS=
(PROTOCOL=tcp)
(HOST=192.168.56.201)
(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=RACDB)
(INSTANCE_NAME=sales2)
(FAILOVER_MODE=
(BACKUP=RACDB2)
(TYPE=select)
(METHOD=preconnect))))
--切换快,但是浪费资源.先建立连接。
以上的方式为客户端,下面的方式为服务端。
第三种:
创建服务(oracle用户)
srvctl add service –d RACDB –s HAHA –r ‘RACDB2,RACDB1’ –P basic
启动服务
srvctl start service –d RACDB –s HAHA
show parameter service;服务名为HAHA不是RACDB.
通过函数修改
begin
dbms_service.modify_service(service_name => 'HAHA',
failover_method => 'dbms_service.failover_method_basic',
failover_type => 'dbms_service.failover_type_select',
failover_retries => 180,
failover_delay => 5);
end;
查看服务进程:crs_stat -t 列表中有没有HAHA的进程
客户端配置tns
rac-taf =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.201)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.202)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = HAHA)
)
)
srvctl:
srvctl status database –d RACDB
srvctl status instance –d RACDB –i RACDB1
srvctl stop instance –d RACDB –I RACDB2
RAC监听与tns的更多相关文章
- oracle 11G创建表空间、用户、配置监听和TNS
最近总在安装各种版本的oralce数据库做测试,11G,32位的,64位的,12C的,每次都折腾表空间,用户.tns啥的,这里记录下,再也不用现用现百度找了 一.创建表空间.用户 在plsql工具中 ...
- Oracle rac 监听状态异常远程连接问题解决(TNS-12541 TNS-12560 TNS-00511 Linux Error:111 ORA-12502)
问题1现象 数据导出脚本执行失败,报错如下 ORA-12537 到服务器上查看,报错: [oracle@test ~]$ lsnrctl status LSNRCTL - Production on ...
- ORACLE RAC 监听配置 (listener.ora tnsnames.ora)
Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的.在Oracle中 tns进程用于为指定网络地址上的一个或多个Oracle 实例提供服务注册,并响应来自客户端对该服务 ...
- ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)
不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册.与单实例相同,RAC非缺省端口的监听器也是通过设置参数 ...
- Oracle 11g RAC 环境下单实例非缺省监听及端口配置
如果在Oracle 11g RAC环境下使用dbca创建单实例数据库后,Oracle会自动将其注册到缺省的1521端口及监听器.大多数情况下我们使用的为非缺省监听器以及非缺省的监听端口.而且在Orac ...
- oracle 11g rac修改监听端口(远程监听和本地监听)
转至:https://www.cnblogs.com/yj411511/p/12459533.html 目录 1.修改远程监听端口 1.1 查看远程监听状态 1.2 修改SCAN listener端口 ...
- (转)ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法
早上同事用PL/SQL连接虚拟机中的Oracle数据库,发现又报了"ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务"错误,帮其解决后,发现很多人遇到过这样的问 ...
- oracle 11g RAC数据库监听配置相关
oracle RAC 监听配置基本和单实例的配置相同 11g之后 安装RAC的过程中,不需要执行netca来手动创建监听,在安装集群软件的时候,会自动创建监听程序: 而在DBCA建库的时候,又会自动创 ...
- 解决Oracle监听错误的一种办法
1:事出有因 安装oracle数据库,默认安装的是orcl数据库,安装完成后查看了一下字符集是gbk的,由于业务需要al32utf8的字符集,所以需要修改字符集,但是修改却无效.于是就删除了默认的or ...
随机推荐
- URL是什么?
URL是统一资源定位符,有时也被俗称为网页地址. 如同在网络上的门牌,是因特网上标准的资源的地址(Address). 在因特网的历史上,统一资源定位符的发明是一个非常基础的步骤.统一资源定位符的语法是 ...
- Codeforces Round #339 (Div. 2) B. Gena's Code 水题
B. Gena's Code 题目连接: http://www.codeforces.com/contest/614/problem/B Description It's the year 4527 ...
- Android 手机设置CMWAP 接入点
Android 手机设置CMWAP 接入点 设置--- 无限控件---移动网络设置---接入点名称----再按菜单---选择新apn 第一步,设置CMNET 上网APN 新建 APN 1.名称:cmn ...
- 【JavaScript】关于JS中的constructor与prototype
最初对js中 object.constructor 的认识: 在学习JS的面向对象过程中,一直对constructor与prototype感到很迷惑,看了一些博客与书籍,觉得自己弄明白了,现在记录如下 ...
- 网络编程之PC版与Android手机版带断点续传的多线程下载
一.多线程下载 多线程下载就是抢占服务器资源 原理:服务器CPU 分配给每条线程的时间片相同,服务器带宽平均分配给每条线程,所以客户端开启的线程越多,就能抢占到更多的服 ...
- 剑指 offer set 10 栈的压入、弹出序列
总结 1. 通过按位对比来判断, 没有更优的方法了
- /proc/sys/vm/ 内存参数
linux下proc里关于磁盘性能的参数 http://blog.csdn.net/eroswang/article/details/6126646 我们在磁盘写操作持续繁忙的服务器上曾经碰到一个特 ...
- 安装apache2.4.10
一:依赖安装:apache依赖于apr,apr-util,pcre,所以需要先安装他,并且需要最新的 apr官网:http://apr.apache.org/download.cgi pcre官网:h ...
- C/C++ unit testing tools (39 found)---reference
http://www.opensourcetesting.org/unit_c.php API Sanity AutoTest Description: An automatic generator ...
- solrj:org.apache.solr.common.util.NamedList.java
package org.apache.solr.common.util; import java.io.Serializable; import java.util.ArrayList; import ...