In Oracle : Oracle Listener (the listener of the database) - lsnrctl

Oracle Applications EBS 11i, R12      Oracle Database      Data Warehouse & BI      Oracle Middleware      PL/SQL      Linux ...

Oracle DBA

Real Application Cluster (RAC) Maintenance tasks Backup and Recovery Database Architecture Replication Oracle Performance Tuning Oracle DBA - Other articles Oracle scripts/ Selects for DBA Oracle Errors (ORA-nnnnn)

The last articles in the site (HOT)

The most visited articles in the site

In-Oracle.com  -> Oracle DBA -> Oracle Database Architecture

-> Oracle Listener (the listener of the database) - lsnrctl

 

 Oracle Listener (the listener of the database) - lsnrctl

 

 

Questions:

  1. What is an Oracle Database Listener ?

  2. Is it necessary to have a listener running in order to connect to the database ?

  3. What happens to connected users when the listener goes down ?

  4. How could I configure the Listener ?

  5. If I configured many listeners on my server, how could I see which is used ?

  6. How could I see if the listener is running ?

  7. How could I start/ stop the listener ?

  8. Host Checking

1.  What is an Oracle Database Listener ?

 

An Oracle Database Listener is an Oracle Database Process which "listen" for for users (clients) connecting to the database. The listener process, either creates a dedicated server process for each user or to a shared multithreaded process that handles many users.

 

 

2.  Is it necessary to have a listener running in order to connect to the database ?

 

No. If the listener is NOT running, we can connect to the database if we are connected directly to the server.  

 

 

3.  What happens to connected users when the listener goes down ?

 

Connected users will still be connected to the database. Users trying to establish new connections to the database (after stopping the listener) will not be able to connect until the listener is restarted.

 

 

4.  How could I configure the Listener ?

 

The listener could be configured in listener.ora. Here is an example of  $ORACLE_HOME/nwtwork/admin/listener.ora:

 

SID_LIST_LISTENER =

  (SID_LIST =

       (SID_DESC =

           (SID_NAME = PLSExtProc)

           (ORACLE_HOME = C:\Oracle_10g)

           (PROGRAM = extproc) 

       )

   )

 

LISTENER =

      (DESCRIPTION_LIST =

                (DESCRIPTION =

                     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

                     (ADDRESS = (PROTOCOL = TCP)(HOST = cata1)(PORT = 1521))

                )

      )

 

LISTENER2 =

      (DESCRIPTION_LIST =

               (DESCRIPTION =

                    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

                    (ADDRESS = (PROTOCOL = TCP)(HOST = cata1)(PORT = 1522))

               )

      )

 

Here 2 listeners are configured for this server. 

 

We can have also one listener which listen to 2 ports.  Here is an example:

 

SID_LIST_LISTENER =

  (SID_LIST =

       (SID_DESC =

           (SID_NAME = PLSExtProc)

           (ORACLE_HOME = C:\Oracle_10g)

           (PROGRAM = extproc) 

       )

   )

 

LISTENER =

      (DESCRIPTION_LIST =

                (DESCRIPTION =

                     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

                     (ADDRESS = (PROTOCOL = TCP)(HOST = cata1)(PORT = 1521))

                     (ADDRESS = (PROTOCOL = TCP)(HOST = cata1)(PORT = 1522))

                )

      )

 

 

5.  If I configured many listeners on my server, how could I see which is used ?

 

Using LSNRCTL> show current listener command. 

 

 

6.  How could I see if the listener is running ?

 

The status of the listener shows if the listener is running. If the listener process is running we can see more details about the process: 

 

oracle listener

 

 

7.  How could I start/ stop the listener ?

 

lsnrctl start

lsnrctl stop

 

Also we can specify a particular listener to start/ stop:

 

lsnrctl start LISTENER2

lsnrctl stop LISTENER2

 

 

8. Host Checking

 

Settings in $ORACLE_HOME/network/admin/sqlnet.ora

 

tcp.validnode_checking =  yes     -> enable host validating ( This feature establishes which host can/ cannot connect to the listener ).

tcp.invited_nodes = (host1, 192.168.1.10)

tcp.exluded_nodes = (host2)

 

 

Notes:

 

1) It is possible to force the service registration with the listener using:

    alter system register

 

2) The listener.ora could define the service names for the database.

 

 

In-Oracle.com  -> Oracle DBA -> Oracle Database Architecture

-> Oracle Listener (the listener of the database) - lsnrctl

Oracle Applications EBS 11i, R12      Oracle Database      Data Warehouse & BI      Oracle Middleware      PL/SQL      Linux ...

 

     Copyright (c) 2011-2015  www.in-oracle.com  |  Disclaimer: The views expressed on this web site are my own and do not reflect the views of Oracle Corporation. You may use the information from this site only at your risk.