Problem solve Get help with specific problems with your technologies, process and projects.

Listener could not solve the SID given in connect descriptor

I connected to a remote database on a server from PC, but the following error occurs:

TNS: Listener could not solve the SID given in connect descriptor
I checked both listener.ora in server and tnsnames.ora in my PC and found that the SID in these two files are the same, but I doubt that the SID was changed by someone else, and all backup file of listener.ora and tnsnames.ora were lost. Through my experiences I know that the service name in these two files can be changed as long as they are the same, but the SID cannot be changed, it should be the same as the SID name at the time I created database. Do you think that my above idea is correct? And please help me to get the SID of database that I forgot. Thank you very much.

You are correct. You can call your TNS alias anything you want. But the SID in the TNS alias definition must match a SID that the listener is listening for. So there are two places to look.

First, check your database server. Note the SID, port, and hostname (or IP number) of this server. Ensure that the LISTENER.ORA is correct.

Second, check your TNSNAMES.ORA file. Make sure all of the information matches. If you still haven't solved the problem, make sure that you are using this TNSNAMES.ORA file by setting your TNS_ADMIN environment variable to point to the directory that holds your TNSNAMES.ORA file.

For More Information

Dig Deeper on Oracle database design and architecture

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.