Oracle access failure

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
arunpramanik
Participant
Posts: 63
Joined: Fri Jun 22, 2007 7:27 am
Location: Kolkata

Oracle access failure

Post by arunpramanik »

Recently one of Oracle database is migrated to new server.
While executing a server job with ORAOCI8 stage, the jobs are failing giving the following error

ORA-12545: Connect failed because target host or object does not exist

We are using only tnsnames.ora, We can query the new database with SQL*plus from the DS Server and job is working fine with old database

please advice what is needed, am I missing any thing

Regards
Arun
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

Sorry, but what does "job is working fine with old database" mean? :?
-craig

"You can never have too many knives" -- Logan Nine Fingers
aoriano
Participant
Posts: 15
Joined: Fri Apr 25, 2008 8:00 am

Post by aoriano »

Hi,

You wrote the Jobs are running with the old Database. What's the difference between your databases ? Version ?

Have you tried using an oracle Oci Stage instead of an Oracle Oci 8 ?
arunpramanik
Participant
Posts: 63
Joined: Fri Jun 22, 2007 7:27 am
Location: Kolkata

Post by arunpramanik »

chulett wrote:Sorry, but what does "job is working fine with old database" mean? :?
I meant while executing the job pointed to old database the job works, but we try to same to new database it fails giving the following error
arunpramanik
Participant
Posts: 63
Joined: Fri Jun 22, 2007 7:27 am
Location: Kolkata

Post by arunpramanik »

aoriano wrote:Hi,

You wrote the Jobs are running with the old Database. What's the difference between your databases ? Version ?

Have you tried using an oracle Oci Stage instead of an Oracle Oci 8 ?
The only diffrence is the new Oracle database is in RAC now
Sainath.Srinivasan
Participant
Posts: 3337
Joined: Mon Jan 17, 2005 4:49 am
Location: United Kingdom

Post by Sainath.Srinivasan »

Was it working before ?

Is it new ?

Does it always happen?

Can you import any metadata ?
arunpramanik
Participant
Posts: 63
Joined: Fri Jun 22, 2007 7:27 am
Location: Kolkata

Post by arunpramanik »

I found what was the problem and resolution is a below

When you are accessing Oracle Database that is RAC
Then you need to identify the All RAC server node as host file in the DS Server.
Include the All the RAC SERVER NODE IPs and and SERVER NODE Names in
\drivers\etc\host file
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

In all honesty you shouldn't need to do that but it is the proper solution.
-craig

"You can never have too many knives" -- Logan Nine Fingers
arunpramanik
Participant
Posts: 63
Joined: Fri Jun 22, 2007 7:27 am
Location: Kolkata

Post by arunpramanik »

chulett wrote:In all honesty you shouldn't need to do that. ...
I will be grateful if any one please let me know is there any other alternatives.
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

I missed the mention you made of having to change the "hosts" file, never seen a need to do that before. You should be able to hit an individual RAC instance just like any other but you set up all nodes so it can do it's own balancing from the virtual node. Here's an example with the names changed to protect the guilty:

Code: Select all

XXX=
  (DESCRIPTION=
    (LOAD_BALANCE=yes)
    (ADDRESS_LIST=
      (ADDRESS=
        (PROTOCOL=TCP)
        (HOST=xxxxxxx15_yyy)
        (PORT=1521)
      )
      (ADDRESS=
        (PROTOCOL=TCP)
        (HOST=xxxxxxx16_yyy)
        (PORT=1521)
      )
      (ADDRESS=
        (PROTOCOL=TCP)
        (HOST=xxxxxxx17_yyy)
        (PORT=1521)
      )
    )
    (CONNECT_DATA=
      (SERVER=dedicated)
      (SERVICE_NAME=zzz1)
    )
  )
And then examples we use to connect to each one individually:

Code: Select all

XXX11=
  (DESCRIPTION=
    (ADDRESS=
      (PROTOCOL=TCP)
      (HOST=xxxxxxx15_yyy)
      (PORT=1521)
    )
    (CONNECT_DATA=
      (SID=xxx11)
    )
  )

XXX12=
  (DESCRIPTION=
    (ADDRESS=
      (PROTOCOL=TCP)
      (HOST=xxxxxxx16_yyy)
      (PORT=1521)
    )
    (CONNECT_DATA=
      (SID=xxx12)
    )
  )

XXX13=
  (DESCRIPTION=
    (ADDRESS=
      (PROTOCOL=TCP)
      (HOST=xxxxxxx17_yyy)
      (PORT=1521)
    )
    (CONNECT_DATA=
      (SID=xxx13)
    )
  )
If you still have issues with this, your DBA should be able to supply you with the proper TNS entries.
-craig

"You can never have too many knives" -- Logan Nine Fingers
Post Reply