Introduction: – We all know that The Oracle Listener is a process listening for incoming database connections. This process is only needed on the database server side. The listener is controlled via the lsnrctl utility. Configuration is done via the listener.ora file.In this article, we are going to setup listener for PDBS in Multitenant Database.

If you wish to setup listener for a particular PDB in the multi-tenant database, then follow as below.

Create a listener and start it.

LISTENER_DBATEST =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbatest-host)(PORT = 1573))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1573))
)
)
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_PDB_LISTENER=ON # line added by Agent
VALID_NODE_CHECKING_REGISTRATION_PDB_LISTENER=SUBNET # line added by Agent


lsnrctl start LISTENER_DBATEST

Now connect to the PDB for which you are setting up the listener.

SQL> alter session set container=PDB1;
Session altered.

SQL> show con_name

CON_NAME
--------
PDB1

Set listener_networks:

use the listener port and the hostname

SQL> alter system set listener_networks='(( NAME=net1)(LOCAL_LISTENER=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbatest-host)(PORT =1573)))))' scope=both;
System altered.


SQL> alter system register;

System altered.

 

Check the status of the listener:

 

lsnrctl status LISTENER_DBATEST

LSNRCTL for Solaris: Version 12.1.0.2.0 - Production on 26-APR-2017 11:36:54

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbatest-host)(PORT=1573)))
STATUS of the LISTENER
------------------------
Alias LISTENER_DBATEST
Version TNSLSNR for Solaris: Version 12.1.0.2.0 - Production
Start Date 21-FEB-2017 11:55:51
Uptime 63 days 23 hr. 41 min. 3 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oracle/app/oracle/product/12.1.0/dbtest/network/admin/listener.ora
Listener Log File /oracle/app/oracle/diag/tnslsnr/dbatest-host/dbatest/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbatest-host)(PORT=1573)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1573)))
Services Summary...
Service "pdb1" has 1 instance(s).
Instance "DBATEST", status READY, has 2 handler(s) for this service...
The command completed successfully

 

 

lsnrctl service LISTENER_DBATEST
LSNRCTL for Solaris: Version 12.1.0.2.0 - Production on 26-APR-2017 12:33:48

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbatest-host)(PORT=1573)))
Services Summary...
Service "pdb1" has 1 instance(s).
Instance "DBATEST", status READY, has 2 handler(s) for this service...
Handler(s):
"D000" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER
(ADDRESS=(PROTOCOL=tcp)(HOST=dbatest-host)(PORT=63970))
"DEDICATED" established:12 refused:0 state:ready
LOCAL SERVER
The command completed successfully

ADD THE BELOW TNS ENTRY:

 

 PDB1 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dbatest-host)(PORT = 1573)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = pdb1) ) )

Test the connectivity using tns service:

sqlplussys/oracle@PDB1 as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Apr 26 12:36:59 2017

Copyright (c) 1982, 2014, Oracle. All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics, Real Application Testing
and Unified Auditing options

With help of an article, you can know about Oracle 12c and connect to the database by using the listener. I would like to say thank you for your attention to the article.

About The Author

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.