How to Resolve Oracle EM Errors by Properly Configuring Dynamic Listeners
This guide explains why Oracle Enterprise Manager fails when listeners lack dynamic registration, demonstrates step‑by‑step configuration of two listeners (listener and lsnr2) using the local_listener parameter, and shows how to verify the setup with lsnrctl commands.
Oracle Enterprise Manager (EM) requires listeners that support dynamic registration; otherwise EM reports errors such as "database is down". The article walks through configuring two listeners— listener (default port 1521) and lsnr2 (port 1526)—and ensuring both are dynamically registered.
1. Initial Listener Configuration
First, create the standard listener entry in listener.ora:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = edbjr2p1.example.com)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)This listener is dynamically registered by default.
2. Adding a Second Listener (lsnr2)
Define a second listener on a non‑default port (1526) in the same file:
LSNR2 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = edbjr2p1.example.com)(PORT = 1526))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1526))
)
)Because Oracle’s default dynamic registration targets port 1521, lsnr2 will not register automatically.
3. Verifying the Problem
Running lsnrctl status lsnr2 shows no services:
[oracle@edbjr2p1 admin]$ lsnrctl status lsnr2
...
The listener supports no services
The command completed successfully4. Enabling Dynamic Registration for lsnr2
Set the local_listener parameter so the database registers to the new port:
Add the LSNR2 entry to tnsnames.ora (same block as above).
Connect as SYSDBA and execute:
sqlplus / as sysdba
SQL> alter system set local_listener='lSNR2';
SQL> alter system register; -- optional if the listener started after the DBRe‑run lsnrctl status lsnr2 and confirm that services are now listed.
5. Encountering EM "Database is Down" Error
After the above change, EM may still report "database is down" because the original listener (port 1521) no longer receives dynamic registration information. Checking its status shows no services.
6. Registering to Both Ports
Modify the parameter to include both listeners:
alter system set local_listener='listener','lsnr2';
alter system register;Now the database registers to both 1521 and 1526, EM connects successfully, and both listeners show services.
7. Static vs. Dynamic Listener Insight
A static listener defined in listener.ora still displays dynamic registration status (e.g., READY for dynamic, UNKNOWN for static). By default Oracle registers dynamically to port 1521 unless local_listener is changed.
EM only works with listeners that have dynamic registration information. If you convert a dynamic listener to static without updating local_listener, EM may still function because the listener retains both static and dynamic entries.
Summary
Oracle EM requires at least one listener with dynamic registration. Use the local_listener parameter to point the database to the desired listener(s), ensure the listener configuration matches the ports, and verify with lsnrctl status. Registering to multiple listeners resolves the "database is down" error.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
ITPUB
Official ITPUB account sharing technical insights, community news, and exciting events.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
