Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Listener problem on 10g - db registration on non-default listeners??

Re: Listener problem on 10g - db registration on non-default listeners??

From: Mladen Gogala <gogala_at_sbcglobal.net>
Date: Fri, 03 Mar 2006 03:50:23 GMT
Message-Id: <pan.2006.03.03.03.48.46.441127@sbcglobal.net>


On Thu, 02 Mar 2006 14:41:24 -0800, BD wrote:

> Can anyone see what I'm missing?

Yes. You are missing dispatchers. For Oracle*Listener to be busy and not go jobless, there must be database dispatchers configured. What listener calls "services" are, in fact, dispatchers. So, if you start with defining listener which is local for your database like this:

SQL> alter system set local_listener='O10G' scope=both;

System altered.

Here, O10G is a TNS entry in the TNSNAMES.ORA or LDAP which points to the right listener.

You should then define dispatchers like this: SQL> alter system set dispatchers='(PROTOCOL=TCP)(SERVICE=oracle)(DISPATCHERS=3)';

System altered.

Service parameter should be one of the names from "SERVICE_NAMES" parameter. Then you register those dispatchers with the listener: SQL> alter system register;

Listener will show the presence of the new services:

LSNRCTL for Linux: Version 10.2.0.2.0 - Production on 02-MAR-2006 22:38:14

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=10G))) STATUS of the LISTENER


Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.2.0 - Production
Start Date                02-MAR-2006 22:24:04
Uptime                    0 days 0 hr. 14 min. 10 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /oracle/product/10g/network/admin/listener.ora
Listener Log File         /oracle/product/10g/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=10G)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=medo.noip.com)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Services Summary...
Service "10G" has 1 instance(s).
  Instance "10G", status READY, has 1 handler(s) for this service... Service "10G_XPT" has 1 instance(s).
  Instance "10G", status READY, has 1 handler(s) for this service... Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "oracle" has 2 instance(s).
  Instance "10G", status UNKNOWN, has 1 handler(s) for this service...
  Instance "10G", status READY, has 4 handler(s) for this service...
The command completed successfully

You can then add some services for another protocol: SQL> alter system set dispatchers='(PROTOCOL=IPC)(SERVICE=oracle)(DISPATCHERS=5)';

System altered.

SQL> alter system register;

System altered.

and the number of services will continue to grow:

$ lsnrctl services

LSNRCTL for Linux: Version 10.2.0.2.0 - Production on 02-MAR-2006 22:41:44

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=10G))) Services Summary...
Service "10G" has 1 instance(s).
  Instance "10G", status READY, has 1 handler(s) for this service...     Handler(s):
"DEDICATED" established:0 refused:0 state:ready

         LOCAL SERVER
Service "10G_XPT" has 1 instance(s).
  Instance "10G", status READY, has 1 handler(s) for this service...     Handler(s):
"DEDICATED" established:0 refused:0 state:ready

         LOCAL SERVER
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 "oracle" has 2 instance(s).
  Instance "10G", status UNKNOWN, has 1 handler(s) for this service...     Handler(s):
"DEDICATED" established:0 refused:0

         LOCAL SERVER
  Instance "10G", status READY, has 9 handler(s) for this service...     Handler(s):
"D000" established:0 refused:0 current:0 max:1022 state:ready

         DISPATCHER <machine: medo.noip.com, pid: 20374>
         (ADDRESS=(PROTOCOL=tcp)(HOST=medo.noip.com)(PORT=50925))

"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
"D011" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: medo.noip.com, pid: 20526> (ADDRESS=(PROTOCOL=tcp)(HOST=medo.noip.com)(PORT=34388))
"D012" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: medo.noip.com, pid: 20528> (ADDRESS=(PROTOCOL=tcp)(HOST=medo.noip.com)(PORT=34910))
"D016" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: medo.noip.com, pid: 20544> (ADDRESS=(PROTOCOL=ipc)(KEY=#20544.1))
"D014" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: medo.noip.com, pid: 20540> (ADDRESS=(PROTOCOL=ipc)(KEY=#20540.1))
"D013" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: medo.noip.com, pid: 20538> (ADDRESS=(PROTOCOL=ipc)(KEY=#20538.1))
"D017" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: medo.noip.com, pid: 20546> (ADDRESS=(PROTOCOL=ipc)(KEY=#20546.1))
"D015" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: medo.noip.com, pid: 20542> (ADDRESS=(PROTOCOL=ipc)(KEY=#20542.1))
The command completed successfully
$

As you can see, we have 3 TCP dispatchers 5 IPC dispatchers and a "local server", 9 services altogether. That's precisely what lsnrctl stat will tell me:
$ lsnrctl stat

LSNRCTL for Linux: Version 10.2.0.2.0 - Production on 02-MAR-2006 22:43:13

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=10G))) STATUS of the LISTENER


Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.2.0 - Production
Start Date                02-MAR-2006 22:24:04
Uptime                    0 days 0 hr. 19 min. 9 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /oracle/product/10g/network/admin/listener.ora
Listener Log File         /oracle/product/10g/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=10G)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=medo.noip.com)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Services Summary...
Service "10G" has 1 instance(s).
  Instance "10G", status READY, has 1 handler(s) for this service... Service "10G_XPT" has 1 instance(s).
  Instance "10G", status READY, has 1 handler(s) for this service... Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "oracle" has 2 instance(s).
  Instance "10G", status UNKNOWN, has 1 handler(s) for this service...
  Instance "10G", status READY, has 9 handler(s) for this service...
The command completed successfully
$

That is probably described in concepts manual, dba guide and net manual. Some reading would probably be a good idea. Now, you are ready to set 4 way RAC with server based load balancing and redundant listeners. May the force be with you.

-- 
http://www.mgogala.com
Received on Thu Mar 02 2006 - 21:50:23 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US