16.3.9 ORA-12514

Indicates that the listener cannot identify the service requested in the connect descriptor.

Message

ORA-12514: Cannot connect to database. 
Service string is not registered with the listener at string.
(CONNECTION_ID=string)

For example:

When the client connects by specifying the service name:
ORA-12514: Cannot connect to database. 
Service sales_service.example.com is not registered with the listener
  at host 10.9.7.5 port 1522. 
(CONNECTION_ID=1ABcDEabCd1aB+AbCdE1aB==)
When the client connects without specifying the service name:
ORA-12514: Cannot connect to database. 
Service Default is not registered with the listener 
  at host 10.9.7.5 port 1522. 
(CONNECTION_ID=1ABcDEabCd1aB+AbCdE1aB==)

Cause

A listener process initially handles all connections to Oracle Database. The connection request received by the listener specified a service name (usually for a database service) that either has not been dynamically registered with the listener or that has not been statically configured in the listener's listener.ora configuration file. This error may be a temporary condition that occurs after the listener has started but before the database instance registers with the listener.

Action

  1. Check for mistakes in the specified connection string.

  2. Check that the database or pluggable database (PDB) is running. If you are using a cloud service, ensure that the database service is running.

  3. Ensure that the SERVICE_NAME parameter in the connection string or that the tnsnames.ora file connect descriptor specifies a service known by the listener.

  4. If using an Easy Connect connection string, then check that the specified service name is known by the listener.

  5. Wait a moment, and then try to connect again. The database instance registration may not be complete yet.

  6. Use the CONNECTION_ID value to track this connection attempt in trace files for further diagnosis.

  7. Check which services are currently known by the listener by performing one of these tasks:
    • Ask your database administrator.

    • Review the connection string in the cloud service console.

    • If you have access to the machine where the listener is running, then run one of the following:
      • lsnrctl services

      • If a listener is named in the listener.ora file, then run:
        lsnrctl services listener_name
      • If an Oracle Connection Manager (Oracle CMAN) proxy listener is named in the cman.ora file, then run:
        cmctl show services -c cman_name
      • If an Oracle Global Service Manager (Oracle GSM) listener is named in the gsm.ora file, then run:
        gdsctl services -raw -gsm gsm_name