Solved

ORA-12514 and Net configuration assistant

Posted on 2007-03-29
2
1,450 Views
Last Modified: 2013-12-19
I am using Oracle 10g on Windows server 2003.  I installed the 10g client on a different pc on the network and used the Net Configuration Assistant/Local Net Service Name Configuration tool to configuration the netservice names.  Each time I configured a name it would blow up because it is trying to use the system account and the password is wrong.  If I change the login to sysman with the correct password it succeeds.  I then try to schedule a job to run and get a ORA-12514 error.  if I check the net configuration assistant the login is changed back to system.
Another weird piece of the puzzle is if I try to log on to a database through Enterprise Manager from the remote server as sysdba it says Insufficient privileges.  If I log on as normal it works.  If I go to database server and log on with the same credentials I can connect as sysdba....PLEASE HELP!  I cannot for the life of me figure out what is going on.  Its like the remote server is trying to resolve my credentials locally.
0
Comment
Question by:PsychoDazey
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
2 Comments
 
LVL 4

Expert Comment

by:marper
ID: 18823550
Check if the connect string in the client TNSNAMES.ORA file contains the
'SERVICE_NAME' parameter - if so, verifiy that it corresponds exactly to the
target database's SERVICE_NAMES INIT.ORA parameter value including DB_DOMAIN,
if configured. To check the value, run:

  SQL> show parameter service_names

If you continue to receive ORA-12514, ensure the Database has successfully
registered with the Listener. To check the value, run:

  LSNRCTL> status <listener-name>

If you continue to receive ORA-12514, you may attempt to workaround the error
by modifying the client TNSNAMES.ORA service name to use '(SID=...)', rather
than '(SERVICE_NAME=...)'. Doing so reverts back to traditional referencing of
hard-coded Database SIDs from the SID_LIST_LISTENER section of the LISTENER.ORA.
This should avoid the error.

Following is an example TNSNAMES.ORA that would result in error:

V817 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = myserv)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = V817)        #Change SERVICE_NAME to SID OR
#     (SERVICE_NAME = V817.DOMAIN) #Correct SERVICE_NAME - include DB_DOMAIN
    )
  )


0
 
LVL 4

Accepted Solution

by:
marper earned 500 total points
ID: 18823582
If you receive an OCI error ORA-12514 indicating “could not resolve service name”:

• Use the Oracle TNSPING utility to verify that the service can be reached.

• Ensure that the OracleID set in your DSN definition matches the Oracle Service Name for the Oracle instance that contains the tables to cache in TimesTen.

• Ensure that there is a service name defined. If it is a Windows Oracle client, use Oracle Net Configuration Assistant to configure a service name. In Oracle Net Configuration Assistant, navigate to Oracle Net Configuration -> Local -> Service Naming, select your Oracle server and confirm that there is a service name or an SID that identifies the Oracle server. If you add or modify a service name, you may need to reboot.

Check the cache agent user name and password on Oracle with SQLPlus to make sure this service name works. For example,

%sqlplus scott/tiger@OracleHost

where scott is the cache agent ID, tiger is the cache agent PWD, and OracleHost is the OracleID specified in your DSN definition.

Note: Your cache agent account may be different from your regular Oracle user account. See “Create Oracle users and set privileges” for details.

• Ensure that there is only one copy of tnsnames.ora on your TimesTen machine. Also check the permission on tnsnames.ora.

• If you are running TimesTen on a UNIX system, check that the ORACLE_HOME environment variable points to your Oracle_installation directory.

For example, ORACLE_HOME=/products/oracle10g

• If you are using an Oracle 9.0.x client on Windows, you may discover that the cache agent is not be able to start even when the OracleID connection attribute is set correctly. To verify the OracleID is set correctly, use ttIsql to issue a query to Oracle using PassThrough=3 connection Setting. For example:

ttIsql
Command> connect
"dsn=myDSN;uid=scott;pwd=tiger;passthrough=3";
Command> SELECT * FROM DUAL;
1 row found.

If the connection succeeds, your OracleID is set correctly and the problem is that you are using a 9.0.x version of the Oracle client. This problem can be resolved by upgrading to a Oracle 9.2.x client.
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Truncate is a DDL Command where as Delete is a DML Command. Both will delete data from table, but what is the difference between these below statements truncate table <table_name> ?? delete from <table_name> ?? The first command cannot be …
How to Unravel a Tricky Query Introduction If you browse through the Oracle zones or any of the other database-related zones you'll come across some complicated solutions and sometimes you'll just have to wonder how anyone came up with them.  …
Via a live example show how to connect to RMAN, make basic configuration settings changes and then take a backup of a demo database
This video explains what a user managed backup is and shows how to take one, providing a couple of simple example scripts.

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question