Questions re LOCAL_LISTENER & REMOTE_LISTENER

  • From: "William Wagman" <wjwagman@xxxxxxxxxxx>
  • To: <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 15 Nov 2007 16:52:22 -0800

Greetings,

I am still trying to get my head around this issue of LOCAL_LISTENER &
REMOTE_LISTENER parameters. I am running a two node RAC cluster on
RHEL4, Oracle 10.2.0.3.0 EE. ASM and DBMS are installed in separate
oracle homes and the listener is running out of the $ASM_HOME. When
pointing at the DBMS instance on each node show parameter listener
returns the following...

SQL> show parameter listener
NAME                                 TYPE        VALUE
------------------------------------ -----------
------------------------------
local_listener                       string      (ADDRESS = (PROTOCOL =
TCP)(HO
                                                 ST =
brownshoe-vip.ucdavis.edu
                                                  )(PORT = 1521 ))
remote_listener                      string      LISTENERS_MOTHRA

On each node local_listener points to brownshoe-vip. The name of the
second node is tenspeed (remember, old detectives?) and so I think on
that node it should *instead* look like this...

SQL> show parameter listener
NAME                                 TYPE        VALUE
------------------------------------ -----------
------------------------------
local_listener                       string      (ADDRESS = (PROTOCOL =
TCP)(HO
                                                 ST =
tenspeed-vip.ucdavis.edu
                                                  )(PORT = 1521 ))
remote_listener                      string      LISTENERS_MOTHRA

The tnsnames.ora on each machine looks like this...

# tnsnames.ora Network Configuration File:
/opt/pkg/oracle/product/10.2.0/dbms/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

LISTENERS_MOTHRA =
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = brownshoe-vip.ucdavis.edu)(PORT =
1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = tenspeed-vip.ucdavis.edu)(PORT =
1521))
  )

MOTHRA =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = brownshoe-vip.ucdavis.edu)(PORT =
1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = tenspeed-vip.ucdavis.edu)(PORT =
1521))
    (LOAD_BALANCE = yes)
    (CONNECT_DATA =
      (SERVER = SHARED)
      (SERVICE_NAME = mothra.ucdavis.edu)
    )
  )

MOTHR2 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = tenspeed-vip.ucdavis.edu)(PORT =
1521))
    (CONNECT_DATA =
      (SERVER = SHARED)
      (SERVICE_NAME = mothra.ucdavis.edu)
      (INSTANCE_NAME = mothr2)
    )
  )

MOTHR1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = brownshoe-vip.ucdavis.edu)(PORT =
1521))
    (CONNECT_DATA =
      (SERVER = SHARED)
      (SERVICE_NAME = mothra.ucdavis.edu)
      (INSTANCE_NAME = mothr1)
    )
  )

The issue I am seeing is that the majority of connections are going to
node 1 (brownshoe) and I think this has something to do with it but I'm
still puzzled. Oracle is also telling me that I should change the
tnsnames.ora so it looks like this on node 1...

LOCAL_LISTENER_BROWNSHOE = 
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = brownshoe-vip.ucdavis.edu)(PORT =
1521))
  )
REMOTE_LISTENER_BROWNSHOE = 
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = tenspeed-vip.ucdavis.edu)(PORT =
1521))
  )

And the mirror image on node 2. This is puzzling to me as the
tnsnames.ora listed in example 9.1 of the Real Application Clusters
Installation guide looks like the one I currently have. I think my lack
of understanding has to do with how the local and remote listener
parameters function so if someone could help me in my understanding I
would be most grateful.

Thanks.



Bill Wagman
Univ. of California at Davis
IET Campus Data Center
wjwagman@xxxxxxxxxxx
(530) 754-6208
--
//www.freelists.org/webpage/oracle-l


Other related posts: