Dynamic service registration
Dynamic service registration allows a
database instance to
identify its available services to
the listener. Available service
names are determined by the following
parameters:
• DB_UNIQUE_NAME, DB_NAME,
and DB_DOMAIN
• SERVICE_NAMES
• INSTANCE_NAME
• LOCAL_LISTENER and REMOTE_LISTENER
Dynamic service registration is configured in the database initialization file. It does not require any configuration in the listener.ora file. If not specified, the value for the SERVICE_NAMES parameter defaults to the global database name, a name comprised of the DB_UNIQUE_NAME and DB_DOMAIN parameters in the initialization parameter file. If not explicitly defined, the DB_UNIQUE_NAME parameter defaults to the value DB_NAME. The value for the INSTANCE_NAME parameter defaults to the Oracle system identifier (SID). All of these
names can be explicitly defined to
non-default values.
The SERVICE_NAMES parameter specifies one or more names by which clients can connect to
the instance. The instance registers its service names with the listener. You
can specify multiple service names to distinguish among different uses of the
same database. For example:
SERVICE_NAMES=PROD,DG_PRMY,DG_RW,MAIN_REPORTING
By default, the listener registration (LREG)
process registers service information with its locallistener on the default
local address of TCP/IP port 1521. To have the LREG process register with a
local listener that does not use TCP/IP port 1521, configure the LOCAL_LISTENER parameter in the initialization parameter file to locate the local
listener
A remote listener is a listener residing on one
computer that redirects connections to a database instance on another computer.
You can configure registration to remote listeners using the REMOTE_LISTENER parameter.
Dynamic service registration allows the LREG
process of a database instance to identify its
available services to the listener without entries
in the listener.ora configuration file. The listener then acts as a port mapper for those
services.
However, when the database instance is stopped, the
listener discards all information for the dynamic services related to that
database. Any attempt to establish a network session to the unknown service
will usually receive the error message “ORA-12514: Listener does not currently
know of service requested in connect descriptor.” Static registration allows
the listener to know of a service, even if the database instance is not
running. This is often important with tools and utilities that try to remotely
start and stop a database instance.
To enable DGMGRL to restart instances during the
course of broker operations, a static service must be registered with the local
listener and assume a static service name of db_unique_name_DGMGRL.db_domain.
Note: Static "_DGMGRL" entries are no longer needed as of Oracle
Database 12.1.0.2 in Oracle Data Guard broker configurations that are managed
by Oracle Restart, RAC On Node or RAC as the broker will use the clusterware to
restart an instance.
Example: listener.ora on Standby Hosts
Static listener entries are needed
for Recovery Manager
operations:
[wnode03]$ cat
$ORACLE_HOME/network/admin/listener.ora
SID_LIST_LISTENER_CLONE =
(SID_LIST =
(SID_DESC =
(ORACLE_HOME =
/u01/app/oracle/product/12.1.0/dbhome_1)
(SID_NAME = MYDB1)))
LISTENER_CLONE =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)
(HOST = MYHOST) (PORT = 1531)(IP = FIRST))))
You can configure a new listener (if necessary) or
optionally update the default listener with a static service entry for your
physical standby database. This entry is needed because the instance is shut
down and restarted during standby database creation using RMAN.
No comments:
Post a Comment