Share |

ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

First of all, make sure the database is started. If it is not, you'll get this message (In 10g release 2).
C:>sc query OracleServiceXE

SERVICE_NAME: OracleServiceXE
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED
                                (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 1077       (0x435)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

C:>sqlplus myuser@xe

SQL*Plus: Release 10.2.0.1.0 

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Enter password:
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor
If the database is running, probably the database hasn't registered yet with the listener.
This occurs when the database or listener just starts up.

Normally this problem should be solved by waiting a minute or so.

If you are using dynamic registration (using the local_listener database parameter), you can try to register the database service with the listener using the following command (from Oracle 9i onwards):
show parameter local listener
-- if the above is empty
alter system set local_listener='(address=(protocol=tcp)(host=localhost)(port=1521))';
alter system register;
If this does not work or you're using static registration, make sure the SERVICE_NAME entry used in the connection string (TNSNAMES.ORA, NAMES, OID, ...) matches a valid service know by the listener.
eg.
C:>tnsping ora920

TNS Ping Utility for 32-bit Windows: Version 9.2.0.7.0 - Production 

Copyright (c) 1997 Oracle Corporation.  All rights reserved.

Used parameter files:
c:\oracle\ora920\network\admin\sqlnet.ora

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = DEV01)(PORT =
 2491))) (CONNECT_DATA = (SERVICE_NAME = UNKNOWN) (SERVER = DEDICATED)))
OK (20 msec)
As one can see, this is the connection information stored in a tnsnames.ora file:
ORA920.EU.DBMOTIVE.COM =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = DEV01)(PORT = 2491))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = UNKNOWN)
      (SERVER = DEDICATED)
    )
  )
However, the SERVICE_NAME UNKNOWN is not known by the listener at the database server side.
In order to test the known services by a listener, we can issue following command at the database server side:
C:>lsnrctl services

LSNRCTL for 32-bit Windows: Version 10.1.0.2.0 - Production 

Copyright (c) 1991, 2004, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=DEV01)(PORT=1521)))
Services Summary...
Service "ORA10G.eu.dbmotive.com" has 1 instance(s).
  Instance "ORA10G", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
         LOCAL SERVER
Service "ORA920.eu.dbmotive.com" has 2 instance(s).
  Instance "ORA920", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
         LOCAL SERVER
  Instance "ORA920", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:2 refused:0 state:ready
         LOCAL SERVER
The command completed successfully
Know services are ORA10G and ORA920.

Changing the SERVICE_NAME in our tnsnames.ora to a known service by the listener (ORA920.EU.DBMOTIVE.COM) solved the problem.
 Was this information helpful?  Yes No
If it was not helpful, please take some time to explain why. This is not to ask questions, you can do so in the forum.

Welcome to our forum for Oracle error: ORA-12514 Add your own message



when i insert a value in database then create this problem.please tell me how to solve this problem(ORA-12514)
Assalam o Alikum all,

I have came up with a solution, there is a file "listener.ora" in network/admin/bin . Now add entry this file to register it with your db.

# listener.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
(SID_NAME = ORCL)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)

Replace your db and sid name in the above file and your service will start working insaAllah.

Regards
Adnan Anjum
Adnan thanks a bunch I tried a bunch of different things until I stumbled on your post and that sorted out my problem.

Adnan, 1 day of googling and your advice was the only one that solved my issues. Thanks a million.

 
Hello,

Is this table a remote table? So are you inserting in a synonym or a view which is based on a table in a remote database?

Check the all_objects, all_synonyms and all_db_links data dictionary views.
 
Hello,

pls how do u create a datebase from command prompt without getting errors ,cause after shutingdown the current instance i tried starting up oracle as nomount it no gave me the following error.





ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
 

Make sure your OracleServiceSID is running.

 
I have similar problem as above I have pasted the commands you have asked to execute as above
I am using OS as XP
and Oracle Database as Express edition 10g.

C:\Documents and Settings\aak>lsnrctl services

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 05-FEB-2008 20:08:43

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
Instance "CLRExtProc", status UNKNOWN, has 3 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
"ORACLE SERVER" established:0 refused:0 current:0 max:25 state:ready
CLRExtProc
(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\NTN_8B8_FDCB4438.ORA))
"ORACLE SERVER" established:0 refused:0 current:0 max:25 state:ready
CLRExtProc
(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\NTN_8B8_FDCB4438.ORA))
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
The command completed successfully




TNSNAMES.ORA file content

XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = USHYDASIFKHAN1.us.deloitte.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)


At command promt
-------------------

Enter user-name: sys@XE/sam
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor


Can you help me resolving this error plz

 
What is the value of service_names?

Are you doing a local connection?
If so, you can try to access the databases like this:

set ORACLE_SID=XE
sqlplus "/ as sysdba"

show parameter service

 
Yes I am using it on a single machine OS XP
local connection only.

how can I find the service_names?

C:\Documents and Settings\aak>set ORACLE_SID=XE

C:\Documents and Settings\aak>sqlplus

SQL*Plus: Release 10.2.0.1.0 - Production on Tue Feb 5 23:03:12 2008

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Enter user-name: sys@XE as sysdba
Enter password:
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor
 
Can you change the tnsnames entry for XE to use localhost as a host instead of USHYDASIFKHAN1.us.deloitte.com

Can you also paste the listener.ora
 
The below is the listner.ora file


SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\OracleXP\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\OracleXP\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = USHYDASIFKHAN1.us.deloitte.com)(PORT = 1521))
)
)

DEFAULT_SERVICE_LISTENER = (XE)
 
Is your database running?

Even if the OracleServiceXE is running, it can be possible that the database is not running.
If you login with an account different than "/ as sysdba" (like you do, you connect with SYS), you will get this error.
eg:
Enter user-name: / as sysdba

Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production

SQL> shutdown abort
ORACLE instance shut down.
SQL> conn
Enter user-name: / as sysdba
Connected to an idle instance.
SQL> conn sys@xe as sysdba
Enter password:
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor


Warning: You are no longer connected to ORACLE.
SQL>

 
Hi,

I am trying to create a DSN through Control Panel>Administrative Tools...
But while testing the oracle connection, I am getting the following error-->
"ORA-12514: TNS:listener does not currently know of service requested in connect descriptor".
But I am able to connect to the oracle database and write queries directly.
Here is my contents of tnsnames.ora:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
And this is listener.ora content->
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
)
Could you please guide me through...I am trying to make a JDBC connection, thats why I am creating a DSN.

Regards,
Sameer
 
Can it be that your database is not configured to use SERVICE_NAME

Try to change the SERVICE_NAME=ORCL ibnto SID=ORCL in your tnsnames.ora

 
I had a similar problem. I run XP as well with Oracle 10gR2. I tried almost everything possible to no avail. I just decided to bring my down my firewall and it resolved the problem.

U can then add port 1521 as a trusted connection so u can bring ur firewall back up after a system restart.

Send me an email if u ve further problems.

Wish u luck.
 
Hi
I have been using Intools for instrumentation projects. Now I get this error( ORA 12514:listener could not resolve SERVICE_NAME). Plz give your suggestion
Did you install new Oracle software on your pc?

What can happen is that a new Oracle home became the default Oracle home.
This Oracle home does not contain the correct files for name resolving, such as tnsnames.ora, sqlnet.ora and/or ldap.ora

You can use our tool Oracle Locator Express to switch between different Oracle Homes

 
I cant connect to my oracle database, i get the following message when i try connecting

SQL*Plus: Release 10.2.0.1.0 - Production on Tue Apr 8 16:11:57 2008

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Enter user-name: system@orcl/supervisor
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor


Enter user-name:


What should i do?




Try to connect / as sysdba and execute

alter system register

 
oracle client installed on winxp showning error
ORA-12514:TNS:Listener could not resolve SERVICE_NAME given in connect descriptor.

while checking on c:> prompt - c:> tnsping ora81 -- showing error message as TNS-03505:Failed to resolve name.
and checking c:> lsnrctl services -- it is saying not recognized .

plz help me solve this prob..
Can you please post the tnsnames entry you are trying to connect to?
 
I have W2003 server standar edition with oracle and we have 28 machines, but 2 machines don't have connection, those machines was in operation for two months but sudendly, yesterday at morning those machines didn't work, I restart the machines and I have connection with sqlplus, I really don't know what happend?

The log only shows error: ORA-12514

The others 26 are working fine.
Are there any more message in the %ORACLE_HOME%/network/log/listener.log file?

If there is a problem, the message is accompanied with the underlying NT error in the listener.log file.
Can you please post the messages here?
 
Entry for tnsnames.ora

ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)

Entry for listener.ora

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = orcl))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)

Entry for sqlnet.ora

# sqlnet.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.

# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.

SQLNET.AUTHENTICATION_SERVICES= (NONE)

NAMES.DIRECTORY_PATH= (TNSNAMES, ONNAMES)

)

When I am doing tnsping
D:\>tnsping orcl

TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 14-MAY-2
008 17:36:06

Copyright (c) 1997, 2005, Oracle. All rights reserved.

Used parameter files:
C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = localhost)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))
OK (40 msec)


When I am doing lsnrctl services

D:\>lsnrctl services

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 14-MAY-2008 17:37
:32

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=orcl)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
The command completed successfully

It is not showing me the instance for my service

And when I am doing this

D:\>sqlplus

SQL*Plus: Release 10.2.0.1.0 - Production on Wed May 14 17:38:56 2008

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Enter user-name: tdcanada@orcl
Enter password:
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified

However when I am doing just

Enter user-name: tdcanada
Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

But I am not able to connect to the sqlDeveloper and connect the same to the application.In sqlDeveloper also I am getting the same error ora-12514.

I tried to restart the oracle services and Listener for so many time, I disabled my Antivirus also but for no help.

Could anyone suggest the probable problem for this.
What is your value of local_listener?

It seems that the automatic service registration is not taking place.

In sqlplus:
show parameter local_listener


If this is empty, set it to register itself to the listener:
alter system set local_listener='(address=(protocol=tcp)(host=localhost)(port=1521))';


Followed by
alter system register;


Now if you do a lsnrctl services again, you should be able to see the registered ORCL service and be able to connect to the database using @ORCL


This solution resolved the problem caused by Oracle error 12514. Thank you very much.
 
I am on Linux OS. I am trying to connect two host machine. I want to duplicate database so want to make connection between them but I get this errors. I have attached tnsnames,listener, lsnrctl services. Kindly help me out.

SQL> connect sys/******@rxwrhs as sysdba;
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor


Warning: You are no longer connected to ORACLE.

[oracle@bubba admin]$ tnsping rxwrhs

TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 09-JUN-2008 11:09:51

Copyright (c) 1997, 2005, Oracle. All rights reserved.

Used parameter files:
/u01/app/oracle/product/10.2.0/network/admin/sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = RXWHRS)))
OK (0 msec)


[oracle@bubba admin]$ cat listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/10.2.0/network/admin/listener.ora
# Generated by Oracle configuration tools.


SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = RXWRHS)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0)
(SID_NAME = RXWRHS)
)
(SID_DESC =
(GLOBAL_DBNAME = RXWRHS_1)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0)
(SID_NAME = RXWRHS_1)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = bubba.rxcanada.ca)(PORT = 1523))
)
)

LISTENER_RXWRHS =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = harley.rxcanada.ca)(PORT = 1521))
)
)


[oracle@bubba admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/10.2.0/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

RXWRHS =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = RXWHRS)
)
)

RXWRHS_1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.199)(PORT = 1523))
)
(CONNECT_DATA =
(SERVICE_NAME = RXWRHS_1)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)


[oracle@bubba admin]$ lsnrctl services

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 09-JUN-2008 11:10:54

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 2: No such file or directory
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=bubba.rxcanada.ca)(PORT=1523)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
Service "RXWRHS" has 1 instance(s).
Instance "RXWRHS", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
Service "RXWRHS_1" has 1 instance(s).
Instance "RXWRHS_1", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
The command completed successfully





 
i m trying to connect to oracle 9i with developer 6i. when i connect then ora-12514 occure. please resolve this problem.
regards.
You have to change your default oracle home, use Oracle locator express in order to do that
 
HI,
PLZ SOLVE THE PROBLEM,PROBLEM IS THAT
ERROR:ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor.SOON AS SOON SOLVE THE PROBLEM.
 
Dear Adnan Anjumm,

I did not see anybody thank you for your last post which solved the problem for me too.

So thank you :)
 
Problem disappeared after restarting the oracle service. huh?
This is how I solved it...

Stop your database service from Windows Services
Stop Listener from LSNRCTL.EXE
In TNSNAME.ORA put(ADDRESS... inside (ADDRESS_LIST = )for the service that causes problem, as below:

ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = [IP ADDRESS])(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)

Start Listener from LSNRCTL.EXE
LSNRCTL> services
See the list of your services
Start your database service from Windows Services

 
Hi,

I'm trying to connect by using the command:
sqlplus system/my_password@dbmain

but I'm getting the ORA-12154 error.

The content of my TNSNAMES.ora if as follows:

INST1_HTTP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = aimsoft-compute)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = MODOSE)
(PRESENTATION = http://HRService)
)
)

DBMAIN =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = aimsoft-compute)(PORT = 1521))
)
(CONNECT_DATA =
(SID = dbmain)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)


The sqlnet.ora is as follows:


TRACE_DIRECTORY_CLIENT = D:\Logs

LOG_FILE_CLIENT = Logfile.log

SQLNET.AUTHENTICATION_SERVICES= (None)

LOG_DIRECTORY_CLIENT = D:\Logs

TRACE_FILE_CLIENT = TraceFile.log

TRACE_LEVEL_CLIENT = ADMIN

LOG_DIRECTORY_SERVER = D:\Logs

#SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES.DIRECTORY_PATH= (HOSTNAME, TNSNAMES, ONAMES)



and the listener.ora:


LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = aimsoft-compute)(PORT = 1521))
)
)
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\ora92)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = dbmain.aimsoft)
(ORACLE_HOME = D:\oracle\ora92)
(SID_NAME = dbmain)
)
)



Please tell me what I'm doing wrong there...
 
For error: ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor

Just discovered this using Linux:

don't type sid_name in listener without spaces:

error:

(SID_NAME=xxxx)

correct:

(SID_NAME = xxxx)

after restarting listner it works fine.

regards.
 
I have the error in the alert log of my primary after it tries to send archive log to the standby.

What can be done about this. I have checked the listener entry that of the tnsmane.ora.

I could do a tnsping across from either the primary to standby and vice versa.

regards
 
No puedo conectarme a la base de datos. Al mirar las variables de entorno no encuentro ninguna asociada al nombre de Oracle. Estoy utilizando Oracle10 en xp.
si me pueden ayudar seria fantastica.
de ante mano, muchisimas gracias y un feliz a?o 2009 y que sea un a?o lleno de exito, abundancia y prosperidada a todos lo que leean este mensaje de ayuda.
Atte.
Juan Eduardo
Are you taking advantage of automatic database registration?

alter system set local_listener='(address=(protocol=tcp)(host=localhost)(port=1521))';
alter system register;


Change you port and hostname to match your setup.

Retry to connect afterwards.

Happy new year to you too!

 
Awesome. Thanks *so* much for the original post. Really sorted my issue out.

Thx!!!

Rich
 
Just wanted to say thanks for this advice, the set local_listener bit worked for me. Had been pondering over this for ages and ended up being quite simple.
 
Is the service running.

Are you using dynamic registration of static registration?
What does the command
lsnrctl services
tell you?
 
Steps to reproduce the bug:

1. Configure clean Windows Server 2003 Standard 32 bit Server (WS2003) in Hyper-V with 1 Virtual Processor
2. Install Oracle 10g2 Database Enterprise
3. Install a TNS LISTENER, allow Port 1521 in the Windows Firewall
4. Create an Oracle Database and Test its OracleService and TNS Listner, works fine
5. Shutdown the WS2003 virtual machine
6. Increase the Virtual Processor count to 2 Virtual Processors
7. Start the WS2003 Virtual Machine
8. Verify that the OracleService for the database is running
9. TNS Listener connection attempts now fail with ORA-12514 error

Because the TNS configuration and service registration is unchanged, none of these forum suggestions to date resolved the problem.
Can you please post the result of "lsnrctl services"

Does the Windows2003 server have a static or dynamic ip address?
If it is a dynamic ip (via DHCP), has it changed?
C:\oracle>lsnrctl services

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 29-MAY-2009 09:39
:35

Copyright (c) 1991, 2005, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=vatms5_ora10g2.accuratetool.com)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
The command completed successfully
There are no database services registered with your listener.
First, make sure the OracleService is running (check in services panel)

Next, you need to register your database service with the listener.
In order to use dynamic registration issue following commands:

If the database and listener are on the same machine:
alter system set local_listener='(address=(protocol=tcp)(host=localhost)(port=1521))';
alter system register;

If the listener is on a different machine, and you are using a static ip address:
alter system set local_listener='(address=(protocol=tcp)(host=vatms5_ora10g2.accuratetool.com)(port=1521))';
alter system register;

 
I tried connecting with the sqlplus application to run the alter system set local_listener per your suggestion. However, I was unable to do this. I received non-TNS errors (I wish I saved them).
Out of desparation, I shut down the Hyper-V virtual machine, reverted the Virtual Processor count back to the count used when creating the database, and restarted. Everything is working without Oracle or TNS changes. Here is the new lsnrctl services results:

C:\oracle>lsnrctl services

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 29-MAY-2009 10:14:26
Copyright (c) 1991, 2005, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=vatms5_ora10g2.accuratetool.com)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
Service "g90528c" has 1 instance(s).
Instance "g90528c", status READY, has 2 handler(s) for this service...
Handler(s):
"DEDICATED" established:11 refused:0 state:ready
LOCAL SERVER
"D000" established:17 refused:0 current:9 max:1002 state:ready
DISPATCHER
(ADDRESS=(PROTOCOL=tcp)(HOST=vatms5_ora10g2)(PORT=1029))
Service "g90528c_XPT" has 1 instance(s).
Instance "g90528c", status READY, has 2 handler(s) for this service...
Handler(s):
"DEDICATED" established:11 refused:0 state:ready
LOCAL SERVER
"D000" established:17 refused:0 current:9 max:1002 state:ready
DISPATCHER
(ADDRESS=(PROTOCOL=tcp)(HOST=vatms5_ora10g2)(PORT=1029))
The command completed successfully

I have never experienced this TNS problem in my years of similar database creation without running in Virtual Machines, so this may just be a bug in Oracle 10G2 running under Hyper-V. I'll just have to be careful to NOT change Virtual Machine parameters after installing Oracle and creating databases. I will be sure to test this issue in Oracle 11 before deploying it to production.

Thanks!
 

My system has been working fine but we had to upgrade the RAM on the m/c and it resulted in

ORA-12514:TNS : listener doesnot currently know of service requested in connect descriptor.

Status of oracleservicetestdb shows as started.

when I use tnsping testdb

TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 01-SEP-1
601 18:09:22

Copyright (c) 1997, 2005, Oracle.  All rights reserved.

Used parameter files:
c:\oracle\product\10.2.0\db_2\network\admin\sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = UK01111
.test1.COM)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME =
testdb)))
OK (20 msec)

i used lsnrctl services and this is the ouput

 C:\Documents and Settings\dsed>lsnrctl services

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 01-SEP-1601 18:12
:45

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
         LOCAL SERVER
The command completed successfully

when I did a connect to sqlplus

usename: sysman@testdb

password: ***

it resulted in same error.

As mentioned in the above thread , I had typed show parameter local_listener

and it gives  

SQL> show parameter local_listener
ORA-01034: ORACLE not available

 Kindly help me to solve this. I see the lot of ppl's similar problem are solved and I am sure mine will be solved as well from this post and it would be good learning for me.

Please help.

 

 

Your database is not running, you will have to start it using the startup command.

After that, it will register itself to the listener if the value of local_listener is not empty

 

why cannot enterprise manager start even though am able to connect to the database.

Are you connecting to the same databsse, i.e. where the grid metadata is stored?

Yes am connecting to the same database

thanks

 

I am trying to create  a listener and connect to the database using that listener. Getting the error ORA-12514

 

listerner.ora

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)

      (PROGRAM = extproc)

    )

  )

 

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

      (ADDRESS = (PROTOCOL = TCP)(HOST = dp-PC)(PORT = 1521))

    )

  )

 

 

LISTTEST1 =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC2))

      (ADDRESS = (PROTOCOL = TCP)(HOST = dp-PC)(PORT = 1522))

    )

  )

 

 

SID_LIST_LISTTEST1 =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)

      (PROGRAM = extproc)

    )

  )


 

tnsnames.ora

OR =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = dp-PC)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = or.oracle.com)

    )

  )

 

EXTPROC_CONNECTION_DATA =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

    )

    (CONNECT_DATA =

      (SID = PLSExtProc)

      (PRESENTATION = RO)

    )

  )

 

TEST1 =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = dp-PC)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = TEST1)

    )

  )



When tried to start with user system, the following error msg is popping up



C:\>sqlplus system/manager@TEST1 as sysdba


SQL*Plus: Release 10.2.0.4.0 - Production on Tue Dec 29 21:12:57 2009


Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.


ERROR:

ORA-12514: TNS:listener does not currently know of service requested in connect

descriptor



Can anyone please resolve my issue?

You either need to do dynamic registration

alter system set local_listener='(address=(protocol=tcp)(host=dp-PC)(port=1521))';

alter system register;

or add the SID to the SID description list

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =
      (GLOBAL_DBNAME = TEST1)
      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
      (SID_NAME = TEST1)
    )

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)

      (PROGRAM = extproc)

    )

  )

 

And restart the listener after you have made the change.

SID_LIST_LISTENER is my default listener and SID_LIST_LISTTEST1 is the new listener which i created 

I am already seeing this settings in my listener.ora

 

 

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =
      (GLOBAL_DBNAME = TEST1)
      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)
      (SID_NAME = TEST1)
    )

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = C:\oracle\product\10.2.0\db_1)

If you are saying that the service TEST1 should be registered with the new listener you created (LISTTEST1), than you will need to change your tnsnames.ora entry for TEST1 to connect to port 1522 instead of 1521.

So if the output of following command contains a service for TEST1:

lsnrctl services LISTTEST1

Than just change the port in tnsnames.ora to 1522

 

i received this ora-12514 error while using the sqlldr command

can any one tell me how to resolve it

Is your database registered with your listener, either statically (using listener.ora) or dynamically (using alter system se tlocal_listener command) ?

 

i received this ora-12514 error while using the sqlldr command

can any one tell me how to resolve it.please reply it in this mail id sugan89@gmail.com if know how to solve it

 
 

How to create the database on link using PR47 as the local machine?

When I ran this script I get the following error

 


SQL> select * from xxtbpc.xxtbpr_organizations@tprd;
select * from xxtbpc.xxtbpr_organizations@tprd
                                          *
ERROR at line 1:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor

Did you define tprd in your tnsnames.ora?

Can you tnsping this entry from the database server?

 

Yes I can  ping tprd.

I have two tnsnames on client_2 and db_1 please check it there is anything wrong on this.

This  one is for db_1

# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

PR47 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.85.24)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = PR47)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )


 xxtbpr_stations_pr47=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST =172.16.85.24)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME =xxtbpr_stations_pr47)
    )

  )
TPRD=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST =172.16.85.24)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME =TPRD.REGRESS.RDBMS.DEV.US.ORACLE.COM)
    )

This one is for client_2

# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\client_2\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

PR47 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.85.24)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = PR47)
    )
  )

 

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )
xxtbpr_stations_pr47=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST =172.16.85.24)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME =xxtbpr_stations_pr47)
    )

  )

TPRD=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST =172.16.85.24)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME =TPRD.REGRESS.RDBMS.DEV.US.ORACLE.COM)
    )

  )

This are the tasks I was asked to do:


  • DBA to create APPS database link (eg @xxtbpr_stations_pr47) to site

  • DBA to create site link to apps (@TPRD) to read owner ‘XXTBPC’
  • I created this database link but still  gives me the same error


    create database link xxtbpr_stations_pr47 connect to pr identified by pr using 'PR47'

    create database link TPRD.REGRESS.RDBMS.DEV.US.ORACLE.COM connect to XXTBPC identified by XXTBPC using 'TPRD'

     

     

     

    Are you sure you are using the correct service name? 

    i.e. on database server 172.16.85.24 is there a database which service_name=TPRD.REGRESS.RDBMS.DEV.US.ORACLE.COM

    ?

    When you are connected to server 172.16.85.24  and you issue:

    lsnrctl services

    What is the output. Does this service you are using (TPRD.REGRESS.RDBMS.DEV.US.ORACLE.COM) show up?

     

     

    The output for 172.16.85.24

     

    Microsoft Windows XP [Version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.

    C:\Documents and Settings\Administrator>lsnrctl services

    LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 16-JUL-2010 11:00
    :32

    Copyright (c) 1991, 2005, Oracle.  All rights reserved.

    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
    Services Summary...
    Service "PLSExtProc" has 1 instance(s).
      Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
        Handler(s):
          "DEDICATED" established:0 refused:0
             LOCAL SERVER
    Service "PR47XDB" has 1 instance(s).
      Instance "pr47", status READY, has 1 handler(s) for this service...
        Handler(s):
          "D000" established:0 refused:0 current:0 max:1002 state:ready
             DISPATCHER <machine: 9KG5P4J-MAR13, pid: 2852>
             (ADDRESS=(PROTOCOL=tcp)(HOST=9KG5P4J-Mar13.Cape.TigerBrands.net)(PORT=1
    045))
    Service "PR47_XPT" has 1 instance(s).
      Instance "pr47", status READY, has 1 handler(s) for this service...
        Handler(s):
          "DEDICATED" established:1359 refused:0 state:ready
             LOCAL SERVER
    Service "TPRD" has 1 instance(s).
      Instance "TPRD", status UNKNOWN, has 1 handler(s) for this service...
        Handler(s):
          "DEDICATED" established:0 refused:0
             LOCAL SERVER
    Service "pr47" has 1 instance(s).
      Instance "pr47", status READY, has 1 handler(s) for this service...
        Handler(s):
          "DEDICATED" established:1359 refused:0 state:ready
             LOCAL SERVER
    The command completed successfully

    C:\Documents and Settings\Administrator>

    Is database TPRD running? To check, connect to server 172.16.85.24

    Next, open a command prompt and type:

    set ORACLE_SID=TPRD

    sqlplus / as sysdba

    show parameter servcie_name

     

    What's the output?

     

     

    No the database is not running.

    C:\Documents and Settings\Administrator>cd ..

    C:\Documents and Settings>cd..

    C:\>set ORACLE_SID=TPRD

    C:\>sqlplus / as sysdba

    C:\>show parameter service_name
    'show' is not recognized as an internal or external command,
    operable program or batch file.

    C:\>

    So sqlplus did not start up?

    sqlplus / as sysdba

    Because 

    show parameter service_name

    is a database command. 

    If the database is not running, you will need to start it in order to solve the ORA-12541 problem


     

    I have tried to check the database command by connecting as system on PR47 and this is the output I got please check if I am missing something.

     

    SQL> connect system/pr47@pr47
    Connected.
    SQL> show parameter service_name;

    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------
    service_names                        string      PR47

    You need to change your tnsnames.ora so the service name is correct.

    It is now

    SERVICE_NAME =xxtbpr_stations_pr47

    but your database service name is just PR47

    Probably you want to do this as well for TPRD.REGRESS.RDBMS.DEV.US.ORACLE.COM


     

    This is the error "The application has encountered a problem we are sorry for the inconvienience.

    This is a problem with toad for which you have to contact Quest software

    Add your message

     Please provide your personal info 



     Please ask your message as briefly and clear as possible 

     Spam Protection 
    Validation Code: pbsmxyohu0nn3zk37


    Ask Your Question

    If you need more information about this particular error message, you can leave a forum message.

    We are replying to this message whenever we have some spare time, so please do not consider this as a private 'solve my critical issue asap' service.

    Should you need professional Oracle Assistance to make your project a success, please have a look at our consultancy services.


    Spam Protection

    In order to prevent automatic generation of messages, we are asking for a validation code. This code is unique and is generated every time a new message is asked.

    If you do not enter the validation correctly, your message will not be recorded.


    Forum Rules

    Please be polite, do not USE ALL UPPERCASE, no insults, violance or any other threats.