Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Can Oracle 8.1.6 and Orale 7.3.4 co-exist

Status
Not open for further replies.

THoey

IS-IT--Management
Jun 21, 2000
2,142
0
0
US
All,

I am responsible for managing several Oracle applications. For the most part they run under Oracle 7.3.4, but we just received an upgrade to an app that requires 8.1.6. I have set up the database and have installed the new software. It runs fine from the server itself.

When I try to run it from my desktop, it fails, giving a cannot resolve TNS error. I have both versions of Oracle installed on my desktop, in two separate directories. I have created the necessary ODBC connection links. I have used the Net8 Configuration assistant, set up those links, tested them and they work fine.

The tech support for this application says that you can't have Oracle 8.1.6 and 7 on the same machine and that this is the problem. Is this a valid problem, or is there some configuration that I have to do to make these two work? Any advice would be greatly appreciated...


Terry M. Hoey
th3856@txmail.sbc.com

Ever notice that by the time that you realize that you ran a truncate script on the wrong instance, it is too late to stop it?
 
As I recall, I've set up a Net8 listener and the tnsnames file had to be modified to include the path to the 7.3.4 Oracle home. I am an old-timer used to editing the file directly, but I think there was an option in the Easy*config to allow for the wizard to configure an older version DB. BTW, if you have multiple versions running, always make sure of the environment you're currently in. I'd test this out, but my vpn to the servers is so sloooow.......
 
This has got to be a FAQ but I don't want to do that until I'm back at my desk and can look at the working solution.

So, until then.. (beware typos)

Connectxyzzy is quite right; on the server you can have one listener servicing both ora7 and ora8 DB's but I *think* you'll find it's the listener.ora file that needs to be modified (rather than tnsnames.ora) to include the path to ORACLE_HOME for each DB running under a different version of Oracle to the listener itself.

On the client side it's not quite so structured.

SQL*Net and Net8 each use separate tnsnames.ora files in the following directories:

SQL*Net[tab]%oracle_home%\network\admin
Net8[tab]%oracle_home%\net8\admin

You have to keep these files in step.

Make a copy of the net8 tnsnames.ora file (just in case) and copy the SQL*Net tnsnames.ora file into the net8\admin directory.

I have no idea why Oracle decided to have two configuration files (doing the same job, with the same name, in two different directories) but I'm sure they know what they're doing. Maybe it's me.... does anyone know of a more elegant way to do this?
Mike
michael.j.lacey@ntlworld.com
 
The answer you question can you have two instance of Oracle
on the same machine is YES. Now the first thing that you mention was that you installed a later version of the database 8.1.x this is all good because hopefully they are in different Oracle Home directory. The answer about have the Oracle Listener listen for the Oracle 8 is not a problem but
remember you can still have two listerner started for separate database on different version. The caveat is that you should change the listener port for one or the other. The listerner is just for what it said listening of call for connection. Along as you system can support it you can
have mulitple instance.
I hope this helps

Maxtrixcd
 
I would be interested in why your application's tech support said that. On the surface it's simply a factual misstatement. Also the error you are getting suggests a SQL*Net configuration problem rather than a software compatibility problem.

On the other I can see some real potential for compatibility problems - not between the two versions of Oracle, but between Oracle 7.3.4 and the application. As an example we used to have Oracle and Crystal Reports installed on the same server, and upgrades were always problematic because the two products share a number of dlls. If there are similar issues with your application, their tech support should be able to provide details.
 
Hmmm... Well, let's try this again. From the server side, which only has Oracle 8.1.6 on it, it runs fine.

From my desktop (and eventually all users desktops), I have both 7.3.4 and 8.1.6 clients installed. When I try to run the app, I get the following error:
Code:
ORA-03114   Not connected to Oracle
I have checked the tnsnames.ora files on both machines to make sure that they are identical (at least as far as this database is concerned). They match:
Code:
TCSV.SBC.COM =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 999.999.999.999)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = TCS)
    )
  )
I just talked to the Tech Support again and they are researching more information. I told them that I knew some DBA's that were running both on their machines without any problems.

I think it might have something to do with the ".SBC.COM" extension in the tnsnames.ora file. With Oracle 7, even though it might get created with ".WORLD" appended to it, you could get to a database without typing it. Now with 8.1.6, it attached that extension to the database name and you cannot connect to the database without it. Using SQL*Plus, I can connect to that database as long as I give the whole "TCSV.SBC.COM" for the connect string. Unfortunately, The login for the app doesn't give me the option for changing the connect string.

This company, and I am trying hard NOT to mention their name, offers this application with two different databases, Oracle and Interbase, but they offer very little support for the Oracle side. When I went to the User's Conference (spelled S A L E S P I T C H) last month, they advertised all these improvements they had made for the Interbase version. I raised my hand and asked when we could expect these changes for Oracle. They mumbled something about them not having the expertise to make the changes for the Oracle side.

I am getting so frustrated with this...



Terry M. Hoey
th3856@txmail.sbc.com

Ever notice that by the time that you realize that you ran a truncate script on the wrong instance, it is too late to stop it?
 
Did you have any luck with the NAMES.DEFAULT_DOMAIN parameter that I suggested in a previous post? I know that, when properly configured, 8.1.6 client doesn't require one to type the entire connect string. This issue could easily be the reason that the application is failing to connect to Oracle.

Incidentally, your TCSV.SBC.COM entry on the client can be renamed. I'm not sure why Oracle appended the SBC.COM extension, but the name is arbitrary and you can change it as needed. It would probably work to just delete the entire extension and just have the following entry.

TCSV =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 999.999.999.999)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = TCS)
)
)
 
I was finally able to get this to work. The application has a "database" tool that allows you to create a new database, activate/disactivate a database, upgrade a database, RENAME a database, etc. The tech support showed me this tool yesterday and we tried changing the name of it there, but it didn't help. Well, I tried again, and then thought of something. I have seen some tools that don't take effect until the database has been disactivated/reactivated.

After verifying what was in my TNSNAMES.ORA, I renamed the database to TCSV.SBC.COM, disactivated/reactivated the database and I was able to get in. I double checked that I could still get in from the application server and could.

Karluk, I am going to try that NAMES.DEFAULT_DOMAIN option and I'll let you know.

Thanks all for trying to help. Your ideas led me to keep thinking and playing and I finally worked it out.


Terry M. Hoey
th3856@txmail.sbc.com

Ever notice that by the time that you realize that you ran a truncate script on the wrong instance, it is too late to stop it?
 
I know that 2 versions of Oracle can run on the same server, does Oracle support this?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top