oracle共享服务器配置汇总(53天)

oracle共享服务器配置汇总 对于共享服务器的配置进行了汇总,也发现一些隐藏的错误

方式一,多种监听(专用连接有专有连接的监听,共享服务有共享服务的监听) 方式二,一种监听,专有和共享的都设定在一个监听上 以下,liste1是专有服务器连接方式,    liste2是专门的共享服务器连接方式    liste3是专有服务和共享服务混合的方式

listener.ora 配置如下。 LISTE1 = (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=1521)) )

SID_LIST_LISTE1= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=PROD.oracle.com) (SID_NAME=PROD) (ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1) ) )

LISTE2 = (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=1529)) ) SID_LIST_LISTE2= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=PROD.oracle.com) (SID_NAME=PROD) (ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1) ) )

LISTE3 = (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=1520)) (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=1530)) )

SID_LIST_LISTE3= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=PROD.oracle.com) (SID_NAME=PROD) (ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1) ) )

tnsnames.ora 文件配置如下 --配置了多个端口的专用服务连接 PROD = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = tcp)(HOST = oel1.oracle.com)(PORT = 1520)) (ADDRESS = (PROTOCOL = tcp)(HOST = oel1.oracle.com)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PROD.oracle.com) ) ) --配置了共享服务连接 SPROD = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = tcp)(HOST = oel1.oracle.com)(PORT = 1529)) ) (CONNECT_DATA = (SERVICE_NAME = PROD.oracle.com) (SERVER=SHARED) ) ) --配置共享服务连接,验证可以有多个共享服务器并存 XPROD = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = tcp)(HOST = oel1.oracle.com)(PORT = 1530)) ) (CONNECT_DATA = (SERVICE_NAME = PROD.oracle.com) (SERVER=SHARED) ) )

--配置dispatcher SQL> show parameter dispatch

NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ dispatchers string (protocol=tcp)(service=PROD.or acle.com)(dispatchers=2) max_dispatchers integer 2 --根据需要来配置共享服务的参数。当然session,processes也需要相应的设置,如果值太小,共享服务连接就会很慢。

SQL> show parameter shared

NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ hi_shared_memory_address integer 0 max_shared_servers integer 2 shared_memory_address integer 0 shared_pool_reserved_size big integer 4404019 shared_pool_size big integer 0 shared_server_sessions integer 50 shared_servers integer 1

--配置本地监听 !!!如果配置的共享服务时非默认监听Listeners,默认端口1521,则需要在local listener中注册。 因为我建了两个监听liste2,liste3,所以把它们的端口信息都注册进去 alter system set local_listener='(address_list=(address=(protocol=tcp)(host=oel1.oracle.com)(port=1529))(address=(protocol=tcp)(host=oel1.oracle.com)(port=1530)))';

SQL> show parameter local_lis

NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ local_listener string (address_list=(address=(protoc l=tcp)(host=oel1.oracle.com)( port=1529))(address=(protocol= tcp)(host=oel1.oracle.com)(por t=1530))) -启动监听 LSNRCTL> start liste1

LSNRCTL> start liste2

LSNRCTL> start liste3

--查看共享服务是否配置正常。加粗的地方因为起了2个dispatcher,所以有2个D开头的handlers. LSNRCTL> service liste3 Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=1520)) Services Summary... Service "PROD.oracle.com" has 2 instance(s). Instance "PROD", status UNKNOWN, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 LOCAL SERVER Instance "PROD", status READY, has 3 handler(s) for this service... Handler(s): "D001" established:0 refused:0 current:0 max:972 state:ready DISPATCHER <machine: oel1, pid: 23114> (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=46966)) "D000" established:0 refused:0 current:0 max:972 state:ready DISPATCHER <machine: oel1, pid: 23112> (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=57952)) "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER Service "PROD_XPT.oracle.com" has 1 instance(s). Instance "PROD", status READY, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER The command completed successfully

--测试一把 [oracle@oel1 admin]$ sqlplus sys/oracle@XPROD as sysdba Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options

SQL>

--判断连接session是否接入了共享服务 [oracle@oel1 admin]$ sqlplus sys/oracle@SPROD as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Oct 26 20:37:34 2012

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

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options

SQL> select sid,server from v$session where sid=(select sid from v$mystat where rownum<=1);

SID SERVER ---------- --------- 160 SHARED

--使用端口连接来确认Liste1,liste3的两个端口都可以正常访问 [oracle@oel1 admin]$ sqlplus sys/oracle@oel1.oracle.com:1520/PROD.oracle.com as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Oct 26 20:44:38 2012

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

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options

[oracle@oel1 admin]$ sqlplus sys/oracle@oel1.oracle.com:1521/PROD.oracle.com as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Oct 26 20:45:12 2012

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

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options

SQL>

--共享服务器关闭失败,所以在做data guard等场景时,不适合用共享服务器模式 SQL> shut immediate ORA-00106: cannot startup/shutdown database when connected to a dispatcher SQL>

--复现共享服务绑定监听错误的情况 --把本地监听设置为空 SQL> alter system set local_listener='';

System altered.

LSNRCTL> service liste1 Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=1521)) Services Summary... Service "PROD.oracle.com" has 2 instance(s). Instance "PROD", status UNKNOWN, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:8 refused:0 LOCAL SERVER Instance "PROD", status READY, has 3 handler(s) for this service... Handler(s): "D001" established:0 refused:0 current:0 max:972 state:ready DISPATCHER <machine: oel1, pid: 23114> (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=46966)) "D000" established:0 refused:0 current:0 max:972 state:ready DISPATCHER <machine: oel1, pid: 23112> (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=57952)) "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER Service "PROD_XPT.oracle.com" has 1 instance(s). Instance "PROD", status READY, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER The command completed successfully LSNRCTL> service liste2 Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=oel1.oracle.com)(PORT=1529)) Services Summary... Service "PROD.oracle.com" has 1 instance(s). Instance "PROD", status UNKNOWN, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 LOCAL SERVER The command completed successfully

--看起来好像也影响不大,后台的共享服务都起来了。但是连库连不上去。 [oracle@oel1 admin]$ sqlplus sys/oracle@XPROD as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Oct 26 20:34:44 2012

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

ERROR: ORA-12523: TNS:listener could not find instance appropriate for the client connection 所以本地监听的配置是必须的。

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2014-04-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏沃趣科技

Oracle 12c系列(八)|RMAN (FROM SERVICE)

相信大家在Dataguard环境中遇到过主库丢失归档日志,而备库也没有及时接收,导致备库出现了GAP的现象。因为日志的中断,备库无法再去应用之后的日志,就无法起...

1094
来自专栏数据库新发现

Oracle数据库恢复:归档日志损坏案例一则

链接:http://www.eygle.com/archives/2010/11/recover_archivelog_corruption.html

592
来自专栏杨建荣的学习笔记

数据迁移部分问题总结(r2第3天)

按照计划在周二开始了数据迁移,本来之前也做了不少的准备工作。但是还是在迁移的过程中出现了一些问题。简单做一个总结。 1.constraint导致的数据rej...

2737
来自专栏乐沙弥的世界

Oracle Net Services - Tracing and Logging at a Glance

    Oracle Net trace 用于跟踪或调试oracle连接故障,连接异常断开或者连接超时等情形,通过产生详细的跟踪信息来进行分析和诊断Oracle...

463
来自专栏杨建荣的学习笔记

清理session的小插曲(r4笔记第95天)

前几天在做一次巡检的时候,通过top发现有3个进程占用的时间很长,之前也碰到过几次这种情况,但是排查发现是由于监控程序在运行,算是虚惊一场。 今天看到这些进程的...

3157
来自专栏乐沙弥的世界

基于 RMAN 的同机数据库克隆

Oracle数据库克隆,也叫着Oracle数据库复制,可以通过基于用户管理的方式来完成,也可以基于RMAN方式来实现。而且Oracle建议使用RMAN方式来实现...

491
来自专栏乐沙弥的世界

基于RMAN从活动数据库异机克隆(rman duplicate from active DB)

      Oracle 11g RMAN能够实现基于活动数据库进行异机克隆,从而省去需要先备份再ftp到辅助服务器的过程。这一切可以全部交给Oracle来搞定...

943
来自专栏数据库新发现

Use Orastress! to test your database

http://www.eygle.com/special/Use.Orastress.2.Test.Oracle.db.htm

622
来自专栏乐沙弥的世界

进程、会话、连接之间的差异

--======================== -- 进程、会话、连接之间的差异 --========================     在使用...

702
来自专栏数据库新发现

Dataguard配置Step by Step

http://www.eygle.com/ha/dataguard-step-by-step.htm

472

扫描关注云+社区