We have an Oracle8i server with MTS on Win2000 platform and a lot of clients with the same TNSNAMES.ORA configuration file.
They all connect to this server without problems. But, when I tried to connect from the client installed on Linux machine, I got following error: ORA-12545: TNS:name lookup failure. It was the same entry for this server in tnsnames.ora as on other clients. TNSPING works OK. I found out that was not no problem with IP, service_name etc...
Connection was successful when I has added (SERVER = DEDICATED) in CONNECT_DATA in tnsnames.ora. With (SERVER = SHARED)connection fails with above-mentioned error. But there is an ordinary application user who works on this computer, who does not require be connected as sysdba or sysoper. What colud be a reason for this problem?
The SYSDBA and SYSOPER privileges are not the cause of your problem. You get the ORA-12545 error when the ADDRESS parameters of your TNS definition are not correct. As you stated, you had a problem with (SERVER = SHARED). So something is not right there. Try removing the SERVER parameter all together and see how it works.
Since you have so many TNSNAMES.ORA files, you might want to investigate centralizing things. Oracle has a product called Oracle Internet Directory (OiD), which is a fully LDAP-compliant server, for implementing centralized TNS naming.
For More Information
- What do you think about this answer? E-mail the editors at [email protected] with your feedback.
- The Best Oracle Web Links: tips, tutorials, scripts, and more.
- Have an Oracle or SQL tip to offer your fellow DBAs and developers? The best tips submitted will receive a cool prize. Submit your tip today!
- Ask your technical Oracle and SQL questions -- or help out your peers by answering them -- in our live discussion forums.
- Ask the Experts yourself: Our SQL, database design, Oracle, SQL Server, DB2, metadata, object-oriented and data warehousing gurus are waiting to answer your toughest questions.