oracle 共享服务连接静态注册服务

默认oracle的共享服务是注册到动态注册服务里面的

[email protected]> select * from v$version where rownum=1;

BANNER

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

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

[[email protected] admin]$ cat listener.ora

# listener.ora Network Configuration File: /home/u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora

# Generated by Oracle configuration tools.

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(GLOBAL_DBNAME =prod3.oracle.com) 
--这是静态注册服务

(ORACLE_HOME = /home/u01/app/oracle/product/11.2.0/db_1)

(SID_NAME =PROD3)

)

(SID_DESC =

(GLOBAL_DBNAME = PLSExtProc)

(ORACLE_HOME = /home/u01/app/oracle/product/11.2.0/db_1)

(SID_NAME = PLSExtProc)

)

)

LISTENER =

(DESCRIPTION =

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

)

设置共享服务器:

alter system set DISPATCHERS = ‘(PROTOCOL=TCP)(DISPATCHERS=3)‘;

alter system set shared_server_sessions=200 scope=both;

alter system set max_dispatchers=10 scope=both;

alter system set shared_servers=10 scope=both;

alter system set max_shared_servers=30 scope=both;

[[email protected] admin]$ lsnrctl services

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 20-APR-2015 15:46:17

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=server1)(PORT=1521)))

Services Summary...

Service "PLSExtProc" has 1 instance(s).

Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0

LOCAL SERVER

Service "PROD3" has 1 instance(s).

Instance "PROD3", status READY, has 4 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

LOCAL SERVER

"D001" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6889>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=57907))

"D000" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6887>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=64757))

"D002" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6891>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=31428))

Service "prod3.oracle.com" has 1 instance(s).

Instance "PROD3", status UNKNOWN, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0

LOCAL SERVER

The command completed successfully

--静态注册服务prod3.oracle.com里面没有dispatcher,动态注册prod3里面有

cat tnsnames.ora

PROD3_S =

(DESCRIPTION =

(ADDRESS_LIST =

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

)

(CONNECT_DATA =

(server=shared)

(SERVICE_NAME =prod3.oracle.com)

)

)

PROD3 =

(DESCRIPTION =

(ADDRESS_LIST =

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

)

(CONNECT_DATA =

(server=dedicated)

(SERVICE_NAME =prod3.oracle.com)

)

)

因为服务prod3.oracle.com 里面没有dispatcher,所以当你作为共享服务连接的时候会报错ORA-12523

[[email protected] admin]$ sqlplussys/[email protected]prod3_s
as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Mon Apr 20 15:48:49 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

ERROR:

ORA-12523: TNS:listener could not find instance appropriate for the client

connection

将共享服务注册到静态监听里面

修改参数

alter system set dispatchers=‘(PROTOCOL=TCP)(DISPATCHERS=3)(SERVICE=PROD3,PROD3.ORACLE.COM)‘;

指定service参数

[[email protected] admin]$ lsnrctl services

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 20-APR-2015 15:49:42

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=server1)(PORT=1521)))

Services Summary...

Service "PLSExtProc" has 1 instance(s).

Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0

LOCAL SERVER

Service "PROD3" has 1 instance(s).

Instance "PROD3", status READY, has 4 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

LOCAL SERVER

"D002" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6891>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=31428))

"D001" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6889>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=57907))

"D000" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6887>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=64757))

Service "prod3.oracle.com" has 2 instance(s).

Instance "PROD3", status UNKNOWN, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0

LOCAL SERVER

Instance "PROD3", status READY, has 3 handler(s) for this service...

Handler(s):

"D002" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6891>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=31428))

"D001" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6889>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=57907))

"D000" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: server1, pid: 6887>

(ADDRESS=(PROTOCOL=tcp)(HOST=server1)(PORT=64757))

The command completed successfully

现在以共享服务器访问:

[[email protected] admin]$ sqlplus sys/[email protected]_s as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Mon Apr 20 15:50:09 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

[email protected]>

本文乃原创文章,请勿转载。如须转载请详细标明转载出处

时间: 2024-08-28 03:25:42

oracle 共享服务连接静态注册服务的相关文章

Oracle监听静态注册和动态注册

静态注册和动态注册总结 一.什么是注册? 注册就是将数据库作为一个服务注册到监听程序.客户端不需要知道数据库名和实例名,只需要知道该数据库对外提供的服务名就可以申请连接到数据库.这个服务名可能与实例名一样,也有可能不一样.在数据库服务器启动过程中,数据库服务器会向监听程序注册相应的服务(无论何时启动一个数据库,默认地都有两条信息注册到监听器中:数据库服务器对应的实例和服务.)相当于是这样:在数据库服务器和客户端之间有一监听程序(Listener),在监听程序中,会记录相应数据库对应的服务名(一个

tomcat注册服务

转自https://blog.csdn.net/wangmx1993328/article/details/81013715 在 tomcat 的 bin 目录下可以看到一个 service.bat 批处理文件,这个文件就是为tomcat注册成系统服务所用.注册服务1)在 DOS 命令行模式下,cd 到 tomcat 的 bin 目录下:2)执行命令:"service.bat  install  服务名  ",后面的服务名可以随便取,别跟系统已有的服务名冲突即可,不写时默认服务名为&q

oracle监听器动态注册于静态注册的区别

即静态注册,listener不知道实例的状态,只有在进程通过其连接数据库时才能知道,如果你想使用远程管理数据库就使用静态监听动态注册:listener实时的都知道实例的状态,数据库在关闭的时候会动态的从listener中注销,所以远程管理数据库的启动和停止就不行了. 4,如何判断是静态注册还是动态注册(1) 可以通过配置文件判断 动态注册 SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(PROGRAM = extproc)(SID_NAME = PLSExtP

Oracle 数据库监听配置和服务

PLSQL Developer 非安装版  配置目录为文件目录 1是C:\Program Files\oracle\instantclient-basic-nt-11.2.0.4.0\instantclient_11_2 2是C:\Program Files\oracle\instantclient-basic-nt-11.2.0.4.0\instantclient_11_2\oci.dll 然后在环境变量中增加 变量名TNS_ADMIN  变量值C:\Program Files\oracle\

【转】oracle 监听静态注册举例解析

网上有很多关于oracle 监听静态注册的文章,但大多都是简单说说,并没有详细的例子,这里,将结合linux as3 下的oracle 10gR2.0.1 举一个具体的例子 1.在 $ORACLE_HOME/network/admin/listener.ora 文件中加入一个静态注册的节点 [[email protected] oracle]$ cd $ORACLE_HOME/network/admin[[email protected] admin]$ vi listener.ora# lis

微服务Docker化注册中心网络处理

微服务Docker化 docker网络有三种模式,可以在启动时通过--net=来指定 --net=bridge 默认选项,用网桥的方式来连接docker容器. --net=host docker跳过配置容器的独立网络栈.本质上来说,这个参数告诉docker不去打包容器的网络层.当然,docker 容器的进程仍然被限制在它自己独有的文件系统.进程列表以及其他资源中.一个快速命令 ip addr 将像你展示docker的网络,它是建立在docker 宿主主机上的,有完整的权限去访问宿主主机的网络接口

安装oracle 11g时,报启动服务出现错误,找不到OracleMTSRecoveryService的解决方法

很多人在安装orcl数据库时,出现很多报错,我也不例外,因上次数据库出现问题,无法修复,只能从新安装,无奈的是,安装时报启动服务出现错误,找不到OracleMTSRecoveryService错MMP,心想又是咋咯回事,第一反应肯定就是没卸载干净.下面时处理办法:不是所有报错通用办法. 打开注册表看看:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下,找到OracleMTSRecoveryService及OracleRemExecServ

微服务探索与实践—服务注册与发现

前言 微服务从大规模使用到现在已经有很多年了,从之前的探索到一步步的不断完善与成熟,微服务已经成为众多架构选择中所必须面对的一个选项.服务注册与发现是相辅相成的,所以一般会合起来思索.其依托组件有很多,比如Zookeeper,Consul,Eureka等等. 本文,我们将探讨服务注册和发现的概念及其使用机制,以使得微服务能够在不知道其确切位置(通常是URL)的情况下消费其他服务.由于本文主要是个人实践的一些总结,总会有不足之处,也希望各位看官帮忙完善.本系列前一篇文章请移步总述 服务注册与发现探

[20191112]oracle共享连接模式端口.txt

--//如果使用共享服务模式,你可以发现每次重启数据库对应的端口号会发生变化.# netstat -tunlp | egrep "Active|Proto|ora_[ds]"Active Internet connections (only servers)Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program nametcp        0