Databases
cancel
Showing results for 
Search instead for 
Did you mean: 

ORACLE listener error: already in use [but sometimes]

CAS_2
Valued Contributor

ORACLE listener error: already in use [but sometimes]

Hi

My box contains several databases. They are started in different startup scripts.

One of the listener didn't start from startup script. The error messages is:

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=node5)(PORT=1531)))
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
TNS-12542: TNS:address already in use
TNS-12560: TNS:protocol adapter error
TNS-00512: Address already in use
HPUX Error: 226: Address already in use

Listener failed to start. See the error message(s) above...


I realized one hour later. Then I ran:

lsof -i :1531

but no process is displayed.

Then I launched the listener and started fine.


Why was port 1531 in use ? Which process might use it ?

I searched in IANA port list. That port number is for RAP-SERVICE. Is that service used in HP-UX ? What is RAP-SERVICE ?

Thanx
8 REPLIES
Luk Vandenbussche
Honored Contributor

Re: ORACLE listener error: already in use [but sometimes]

Hi Cas,

pls post your tnsnames.ora and listener.ora
CAS_2
Valued Contributor

Re: ORACLE listener error: already in use [but sometimes]

# LISTENER.ORA Network Configuration File: /u700/app/oracle/product/ora92/network/admin/listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER_DWH =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u700/app/oracle/product/ora92)
(PROGRAM = extproc)
)
)

LISTENER_DWH =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = node5)(PORT = 1531))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
)
)

SID_LIST_LISTENER_DWH =
(SID_LIST =
(SID_DESC =
(SID_NAME = dwh01)
(ORACLE_HOME = /u700/app/oracle/product/ora92)
)
)
CAS_2
Valued Contributor

Re: ORACLE listener error: already in use [but sometimes]

dwh01 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = nodo5 )(PORT = 1531))
)
(CONNECT_DATA =
(SID = DWH01)
)
)
Yogeeraj_1
Honored Contributor

Re: ORACLE listener error: already in use [but sometimes]

hi cas,

it may be that another process that is configured to run on port 1531.

try to run and post the output of:
netstat -an|grep 1531|grep -i listen

also verify your /etc/services

you may wish to add the following line in it:
listener 1531/tcp

kind regards
yogeeraj
No person was ever honoured for what he received. Honour has been the reward for what he gave (clavin coolidge)
Luk Vandenbussche
Honored Contributor

Re: ORACLE listener error: already in use [but sometimes]

Do you use the following start / stop command

lsnrctl start listener_dwh
lsnrctl stop listener_dwh
Volker Borowski
Honored Contributor

Re: ORACLE listener error: already in use [but sometimes]

Hi,

you are searching at the wrong corner:

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=node5)(PORT=1531)))

-> TCP is OK

Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))

-> IPC is your problem.

I suspect you have some kernel resorces too low (ipc / sem / shm parameters). Check the documetation for correct kernel parameters !

Volker
CAS_2
Valued Contributor

Re: ORACLE listener error: already in use [but sometimes]

As Volker suggested, I recompiled the kernel in order to set the recommended values of kernel parameters.

Now, kernel parameters of my box fit the Oracle9i 64bit requisites for HP-UX 11.11:

# kmtune | grep -e ^msg -e ^shmm -e ^sem

msgmap 4098 - (MSGTQL+2)
msgmax 8192 Y 8192
msgmnb 16384 Y 16384
msgmni 4096 - (NPROC)
msgseg 32767 - 32767
msgssz 8 - 8
msgtql 4096 - (NPROC)
sema 1 - 1
semaem 16384 - 16384
semmap 4098 - (SEMMNI+2)
semmni 4096 - 4096
semmns 8192 - (SEMMNI*2)
semmnu 4092 - (NPROC-4)
semmsl 2048 Y 2048
semume 10 - 10
semvmx 32767 - 32767
shmmax 4294967296 Y 4294967296
shmmni 512 - 512

But the listener still shows the behaviour explained above.

P.D: I'm not a DB admin. What the clausule '(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))'
is for ?. The other listener.ora files don't include it.
CAS_2
Valued Contributor

Re: ORACLE listener error: already in use [but sometimes]

First, I must correct an issue above: I found that not only ONE listener was configured to use IPC protocol; there is another listener (a IAS listener).

I found a web page in internet where is mentioned the use of IPC protocol in listener.ora. The key here is use different KEY clause values in different listener config files. For example, for the first listener:

(KEY = EXTPROC1 )

for the second listener:

(KEY = EXTPROC2 )

and so on...

In my case, both KEYs were the same. Thus, second listener startup reported "already in use" because first one already was running with that KEY value.