ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
search cancel

ORA-12505, TNS:listener does not currently know of SID given in connect descriptor

book

Article ID: 245411

calendar_today

Updated On:

Products

Data Loss Prevention Data Loss Prevention Enforce Data Loss Prevention Oracle Standard Edition 2

Issue/Introduction

The DLP Enforce Console login screen will not load.

On the Enforce Server:
IncidentPersister logs show the following database connection error:
"Caused by: oracle.net.ns.NetException: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor"

When trying to connect to the protect database via sqlplus, the following errors are seen:
"ORA-12514: TNS:listener does not currently know of service requested in connect"

"ORA-12560: TNS:protocol adapter error"

"ORA-12505, TNS:listener does not currently know of SID given in connect descriptor"

ORA-28547

On the database server:
tnsnames.ora, sqlnet.ora, and listener.ora all appear to be configured correctly.

Running 'lsnrctl status'  does not show the protect listener in the list


Connecting to the database as the sys user, the 'startup' command reports the instance is already running.
We also see the local_listener is set properly by running 'show parameter listener'.

When connecting using SQLPlus "conn protect@protect" you may get this error message:

ORA-28547: connection to server failed, probable Oracle Net admin error

 

Environment

Data Loss Prevention 15.x/16.x
Oracle 19c

Cause

The "protect" listener is not recognized on the Oracle database server.

Resolution

Configure a static listener.

  1. On the Oracle server, open the listener.ora

  2. Update the following information within the file.

    Old value:

    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = C:\oracle\product\19.3.0.0\db_1)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:C:\oracle\product\19.3.0.0\db_1\bin\oraclr19.dll")
        )
      )

    --- Note: Remove the lines for "PROGRAM" and "ENVS"

    New value:

    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = protect)
          (GLOBAL_DBNAME = protect)
          (ORACLE_HOME = C:\oracle\product\19.3.0.0\db_1)
        )
      )

  3. DO NOT remove the remaining lines.
  4. Restart the listener
    lsnrctl stop
    lsnrctl start

    The start summary should now list the protect listener.

    Note: When starting the listener, the protect listener will be listed as "UNKNOWN" instead of "READY". This is expected for static listeners.

  5. Testing the connection via sqlplus should now be successful.

  6. Restart the DLP services on the Enforce server.
  7. Verify operating correctly

Additional Information

This may be caused by an AV/GPO or system update that affects communication of the Listener to the DB.