cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple database in single server

0 Kudos

Hi experts,

Please tell me how to configure multiple SID with single listener.

I configured the DR setup of two databases in single server. Now the problem is, if I start one listener from orapm1(CRM), my data is replicating only for CRM, and if I am going to start my listener from oraPE2 user (DBM), error is coming u201C listener is already startu201D but DBM is not replicating with DR site.

And when I stop the listener from oraPM1, and start listener from user oraPE2(DBM), my DBM is replicating properly, I want to start both in parallel with one listener.

Right now I have only one port for both database (1527) and only one LISTENER, should I need to change the port for one server e.g DBM (primary and standby), and then change in listener files. For both side (primary and standby)

If I am correct please let me know the steps, what precautions we need to take.

And what change I need to do in listener file.

2nd) Can I work on same port for both SIDs, if yes please tell me the steps.

My CRM is working properly so I need to change in DBM part.

I am attaching listener file from both users in same server (10.11.230.12)

ADMIN_RESTRICTIONS_LISTENER = on

LISTENER_PE2 =

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = IPC)

(KEY = PE2.WORLD)

)

(ADDRESS=

(PROTOCOL = IPC)

(KEY = PE2)

)

(ADDRESS =

(COMMUNITY = SAP.WORLD)

(PROTOCOL = TCP)

(HOST = 10.11.230.12)

(PORT = 1527)

)

)

STARTUP_WAIT_TIME_LISTENER = 0

CONNECT_TIMEOUT_LISTENER = 10

TRACE_LEVEL_LISTENER = OFF

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PE2)

(ORACLE_HOME = /oracle/PE2/102_64)

)

)

pm1 listener file

ADMIN_RESTRICTIONS_LISTENER = on

LISTENER =

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = IPC)

(KEY = PM1.WORLD)

)

(ADDRESS=

(PROTOCOL = IPC)

(KEY = PM1)

)

(ADDRESS =

(COMMUNITY = SAP.WORLD)

(PROTOCOL = TCP)

(HOST = 10.11.230.12)

(PORT = 1527)

)

)

STARTUP_WAIT_TIME_LISTENER = 0

CONNECT_TIMEOUT_LISTENER = 10

TRACE_LEVEL_LISTENER = OFF

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PM1)

(ORACLE_HOME = /oracle/PM1/102_64)

)

)

Thanks in advance.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Rishi,

It is not possible to use same listener port for two or more different listeners, at the same time. You should assign different port number for each listener.

In your case, you should assign two different port for each listener on the data guard site. For example, PROD_A and PROD_B is running on different hosts, DG_A and DG_B is running on the same host. With these parameters, PROD_A should run on TCP/1527 and DG_A run on TCP/1527, while PROD_B is running on TCP/1527 and DG_B is running on TCP/1528.

In short, one listener cannot handle two or more databases. One listener requires one database.

Best regards,

Orkun Gedik

0 Kudos

Thanks Orkun/Rajesh,

database is 10g for both.

now it will effect anything if i change primary server's port?

do i need downtime for restart the listener in primary?

i attached listener file to you are we need to change except port?

or i need to put both server port in one listener, because only one listener is active at at time?

plz assist me.

Thanks

Rishi

Former Member
0 Kudos

In short, one listener cannot handle two or more databases.

Sorry to disagree.

In SAP environments I have seen one listener serving many Oracle databases, and also many databases each having a listener of their own.

Both will work, if configured properly.

It is true however that in any case ports have to be different.

regards

Former Member
0 Kudos

>> In SAP environments I have seen one listener serving many Oracle databases, and also many databases each having a listener of their own.

Really? I didn't see that kind of configuration? Could you give an example about it?

Best regards,

Orkun Gedik

0 Kudos

Dear Experts,

please tell me is it ok or i need to change something else?

this example is for only one listener, and i put both SID details in same LISTENER, or i need to change the listener name for another server. it is very confusing...

ADMIN_RESTRICTIONS_LISTENER = on

LISTENER =

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = IPC)

(KEY = PM1.WORLD)

)

(ADDRESS=

(PROTOCOL = IPC)

(KEY = PM1)

)

(ADDRESS =

(COMMUNITY = SAP.WORLD)

(PROTOCOL = TCP)

(HOST = 10.11.230.12)

(PORT = 1527))

)

)

LISTENER =

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = IPC)

(KEY =PE2.WORLD)

)

(ADDRESS=

(PROTOCOL = IPC)

(KEY = PE2)

)

(ADDRESS =

(COMMUNITY = SAP.WORLD)

(PROTOCOL = TCP)

(HOST = 10.11.230.12)

(PORT = 1528))

)

)

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PM1)

(ORACLE_HOME = /oracle/PM1/102_64)

)

)

STARTUP_WAIT_TIME_LISTENER = 0

CONNECT_TIMEOUT_LISTENER = 10

TRACE_LEVEL_LISTENER = ON

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PE2)

(ORACLE_HOME = /oracle/PE2/102_64)

)

)

Rishi

Former Member
0 Kudos

Hello Orkun,

afaik we haven't any such configuration running any more, sorry.

More recent SAP installation guides seem to prefer the many listeners approach.

But the idea simply is this: In listener.ora put the data of all the databases the listener should know about,

under SID_LIST and ADDRESS_LIST.

SID_LIST does imply a list of sids, imho

regards

Former Member
0 Kudos

Rishi,

you can only have One line with SID_LIST, only one with ADDRESS_LIST

I don't know the eaxct syntax by heart, but try this:

LISTENER =

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = IPC)

(KEY = PM1.WORLD)

)

(ADDRESS=

(PROTOCOL = IPC)

(KEY = PM1)

)

(ADDRESS =

(COMMUNITY = SAP.WORLD)

(PROTOCOL = TCP)

(HOST = 10.11.230.12)

(PORT = 1527))

)

(ADDRESS =

(PROTOCOL = IPC)

(KEY =PE2.WORLD)

)

(ADDRESS=

(PROTOCOL = IPC)

(KEY = PE2)

)

(ADDRESS =

(COMMUNITY = SAP.WORLD)

(PROTOCOL = TCP)

(HOST = 10.11.230.12)

(PORT = 1528))

)

)

Similar for SID_LIST.

And please double check for matching ( and )

regards

Former Member
0 Kudos

Hi Rishi,

You have 2 different Oracle homes? If it is, then configure them separately by assigning the different port numbers at the standby site.

Best regards,

Orkun Gedik

volker_borowski2
Active Contributor
0 Kudos

Hi,

I think having one listener for multiple DB is outdated (I think I had that with verison 8 for a while)

There was a sapnote showing a sample configuration for some 10 DBs.

If you have seperate OH go for seperate listeners. Easier to manage.

Volker

0 Kudos

Dear Experts,

the problem is solved now, both server replicating properly,

i configured the saperate listener with different ports and most important "changed the listener name" in standby server.

also changed the listener port in primary server same as tnsnames file in both servers.

Thanks to all for assisting me quickly..

Rishi

Former Member
0 Kudos

Hi,

I agree with Joe's statement. We have that in place in our environment. Our listener looks similar to this:

LISTENER =

(ADDRESS_LIST =

(ADDRESS=

(PROTOCOL=IPC)

(KEY= ABC.WORLD)

)

(ADDRESS=

(PROTOCOL=IPC)

(KEY=ABC)

)

(ADDRESS =

(COMMUNITY = tcpcom.com)

(PROTOCOL = TCP)

(Host = server1)

(Port = 1521)

(QUEUESIZE = 1024)

)

)

STARTUP_WAIT_TIME_LISTENER = 0

CONNECT_TIMEOUT_LISTENER = 15

LOG_DIRECTORY_LISTENER = /oracle/network/traces

TRACE_DIRECTORY_LISTENER = /oracle/network/traces

ADMIN_RESTRICTIONS_LISTENER = ON

TRACE_LEVEL_LISTENER = OFF

ADR_BASE_LISTENER = /oracle/network/traces

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SDU = 4096)

(SID_NAME = ABC)

(ORACLE_HOME = /oracle/v10204a)

)

(SID_DESC =

(SDU = 4096)

(SID_NAME = DEF)

(ORACLE_HOME = /oracle/v10204a)

)

(SID_DESC =

(SDU = 4096)

(SID_NAME = HIJ)

(ORACLE_HOME = /oracle/v10204a)

)

(SID_DESC =

(SDU = 4096)

(SID_NAME = KLM)

(ORACLE_HOME = /oracle/v10202d)

)

(SID_DESC =

(SDU = 4096)

(SID_NAME = NOP)

(ORACLE_HOME = /oracle/v11202b)

)

)

When we start the listener, we login to the SID of the system that uses the highest oracle version. Our DBA's did a good job in simplying how we manage our Oracle databases for SAP.

Answers (1)

Answers (1)

Former Member
0 Kudos

Hello,

If you are using 2 different databases on single server (not MCOD installation), you need to use 2 different listener ports.

Change the port of one of the listener....

It will work.

Regards.

Rajesh Narkhede