Toad World® Forums

2 toads on the same pc


#1

Hi all, I need to have 2 TOADs installed (version 9.0.1 and 12.12) and I've also installed 2 oracle client (version 10.2.0 and 12.0.1) that work fine but there's no way that I know to make them running at the same time (without modifying system vars).
Environment Path var is set with "c:\app\oracle\10.2.0\client_1\bin " etc and this work fine... but what I've to set in ORACLE_HOME?
If I use "c:\app\oracle\10.2.0\client_1" toad v 9 works but toad 12 won't run with error "Can't initialize OCI.Error -1" but if I set ORACLE_HOME to "c:\app\oracle\12.0.1\client_1" toad 12 work but 9 gaves the OCI error...
Somebody knows how can I make them "living together" without changing everytime the variable?


#2

Why do you keep version 9.0.1? If you want to be able to run 2 Toads at the same time, why not get 2 versions that are closer together? That would probably make problem go away.


#3

Hi Denis,

Apologies in advance if I've got your question wrong.

I used to have to connect to an old 8i database as well as 10g
databases, and this needed two separate installations of Oracle Client
as Oracle had decided that old database can't be connected to with new
clients, and new databases can't be connected to with old clients.

I had one Toad installation, and both clients. Both clients were on PATH
as well.

On the Oracle "New Session" screen, I logged out of everything first by
the way, then configured the 9i connection to use the 9i client, and the
10g connection(s) to use the 10g client. You can't have anything
connected at the time as it disables the drop down where you get to
choose the Oracle client.

I defaulted the 10g client as that was the most used one.

Ok, that worked. But, once you have connected to any database, with one
particular client, you can't (or couldn't back then) connect with a
different client to another database. Bummer.

Obviously, one Toad uses one Oracle client, I get the impression that
the connections are not threaded, and possibly cannot be, but it would
be nice to be able to use more than one client at a time.

In use, if I needed to login to the 9i database, I would have to login
to that and that alone as I could no longer use my 10g client. The same
happened if I was into a 10g database on 10g client, I couldn't then use
the 9i client on my 10g database.

I suggest you configure the old Toad to default to using the old client
and the new Toad to use the new client. Set the appropriate defaults too
on the connection screens to use the appropriate client as default, and
only have connections in old Toad that uses old client, and the reverse
for new Toad.

That might work.

HTH


#4

I've tried...I MUST ( :disappointed_relieved: ) have o10 client installed 'cause my web develping SW wan't able to work with O12 so... I have to use client 10.
at the same time I have to use (LOL) for production environment oracle 12 client and (eheheh) for working on tables etc I've to use Toad 12 (toad won't work!).. Of course I've set the correct HOME, path is fine...
Situation is

ORACLE 10client - ORHOME1 - toad9
ORACLE 12client - ORHOME2 - toad12

Path = c:\oracle\product\12.1.0\client_1\bin;C:\oracle\product\10.2.0\client_1\bin;.....

I MUST have 10 client intalled and active... and if possible to make toad 12 running...
Actually
my enviroment var
ORACLE_HOME is set to C:\oracle\product\10.2.0\client_1 (otherwise I cannot be able to develop :rofl: )


#5

Evening Denis,

I've tried...I MUST ( :disappointed_relieved: ) have o10 client
installed 'cause my web develping SW wan't able to work with O12 so... I
have to use client 10.

You are aware, I hope, that installing multiple clients on the same PC
is pretty much frowned upon since Oracle 9i I think. There used to be a
way that you could install multiple versions of Oracle Client, and under
one of the start menu options, there was an Oracle Home Selector - which
did for Windows what "oraenv" does for the rest of the world's server,
allows different Oracle Homes to be installed, but permits a session to
use only one.

Have a look at your Oracle 10g client, to see if there's still that
option, but I think it vanished at 10g. So, in theory, mixing and
matching Oracle clients is a no-no because you can end up with, for
example, the 10g client loading a 12c dll and vice versa - which is
unhealthy.

Installing multiple clients puts them all on the PATH and allows for
this mixing and matching, and it's not always binaries that are the
problem, if you suddenly start losing error messages to go with the
codes you see, that's a sure sign of a problem with your Oracle Home.

However, https://github.com/NormanDunbar/OraenvWin might be of some use,
maybe. It's a windows system whereby you can use the "oraenv" command
and get the same features, pretty much, as Unix/Linux does and it allows
you to select different Oracle Homes onto your path as it removes any
existing Oracle Homes before adding the new one. I had to write that for
a migration to the Azure Cloud in a past life, one of my colleagues has
added a PowerShell version, mine was simply a few command files and a
couple of C routines.

Maybe with that utility you'll be able to pick and choose, but, testing
will tell you. It's best if nothing is on your PATH when you start, but
to be honest, it removes any Oracle version - unless it's exactly the
same as the one you are attempting to use - before adding the new one
anyway. But definitely do not have more than one version on PATH at any
one time. (Ask me how I know!)

So, for web development work you need 10g client and for production
work, 12c. I think you'll be able to use my utility to do that.

If you need:

ORACLE 10client - ORHOME1 - toad9
ORACLE 12client - ORHOME2 - toad12

then you can "oraenv" to set the 10g client, and run up Toad 9, then,
when done, close Toad 9, "oraenv" to set the 12c clients and use Toad 12
for a while.

You can't safely, guarantee that when two Oracle Homes are on PATH
together, that it will just work. I've seen too many weird problems
which went away after sorting out the PATH. Every time there were dlls
loaded from different versions of Oracle client. I have to use the
Microsoft tool, Process Explorer, to show which files and dlls were
loaded from which Oracle Home. I thoroughly recommend it.

...

Actually my enviroment var
ORACLE_HOME is set to C:\oracle\product\10.2.0\client_1 (otherwise I
cannot be able to develop :rofl: )

I suspect the advice above might be of some use then.

Good luck.