Wednesday, November 9, 2022

Listener output showing multiple instances when only one exists

In one of my multitenant setups, I saw the following output from the listener:
lsnrctl status cdb

Service "sales" has 2 instance(s).
  Instance "cdb", status READY, has 2 handler(s) for this service...
  Instance "sales", status UNKNOWN, has 1 handler(s) for this service...
There is only one instance in my setup, the container database called "cdb".
What's causing the listener to view the pdb "sales" as a separate instance, then?

See this post where Uwe Hesse explains:

It is nothing to worry about when you see the same instance showing up twice, once with status READY and once with status UNKNOWN. READY means listener knows this because PMON of that instance told him so (dynamic registration) UNKNOWN means listener knows this because of SID_LIST entry in the listener.ora (static registration)

Quite correctly, I had a static entry in my listener.ora file:
SID_LIST_cdb =
  (SID_LIST =
    (SID_DESC =
      (ORACLE_HOME= /u01/orasoft/product/19c)
      (SID_NAME = sales)
    )
  )

If I remove the following part
(SID_NAME = sales)
and restart the listener, the extra instance will be removed from the listener output:
lsnrctl stop cdb
lsnrctl start cdb

Output:
Service "sales" has 1 instance(s).
  Instance "cdb", status READY, has 2 handler(s) for this service...

No comments:

Post a Comment