From: Terry Dykstra on 20 Jan 2010 19:07 I have Oracle 10.2.0.4-64 bit running on W3K-64-bit. Now I need to run a 32-bit 9.2.0.5 (yes I know, ouch) on this box. I cannot get the listener to work. I use batch file to specifically point to the 9.2 environment, but for some reason it points to the 64-bit version. Any clues? E:\dbscripts>rem set oracle 9.2 environment E:\dbscripts>set ORACLE_HOME=C:\oracle\ora92 E:\dbscripts>set path=C:\oracle\ora92\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;\\CFOLDC1\fopublic\ E:\dbscripts>set TNS_ADMIN=C:\oracle\ora92\network\admin E:\dbscripts>c: C:\>C:\oracle\ora92\bin\lsnrctl.exe LSNRCTL for 32-bit Windows: Version 9.2.0.5.0 - Production on 20-JAN-2010 17:03: 59 Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved. Welcome to LSNRCTL, type "help" for information. LSNRCTL> version Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521)) TNSLSNR for 64-bit Windows: Version 10.2.0.4.0 - Production TNS for 64-bit Windows: Version 10.2.0.4.0 - Production Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version 10.2.0.4 ..0 - Production Windows NT Named Pipes NT Protocol Adapter for 64-bit Windows: Version 1 0.2.0.4.0 - Production Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version 10.2.0 ..4.0 - Production,, The command completed successfully LSNRCTL> -- Terry Dykstra
From: vsevolod afanassiev on 21 Jan 2010 00:45 I think on Windows Oracle works differently from UNIX. Environment variables get ignored (most of them). Instead Oracle excutable reads file oracle.key located in the same directory as executable itself, i.e. ORACLE_HOME\bin. This is plain text file, you can view it with Notepad. This file contains pointer to the Registry section for this particular ORACLE_HOME. Then executable reads Registry to get such information as ORACLE_HOME, etc. Please check that: - c:\oracle\ora92 is indeed 32-bit ORACLE_HOME - It contains file oracle.key - This file points to Registry entries for 32-bit ORACLE_HOME Also please check that Registry entries for different ORACLE_HOME are at the same level in the Registry, something like HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME2 In other words you don't have entry at the higher level HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
From: Arne Ortlinghaus on 21 Jan 2010 03:25 Hi Terry, I believe that only one listener is necessary independing of mixing 32Bit and 64Bit. Arne Ortlinghaus
From: Vladimir M. Zakharychev on 21 Jan 2010 08:19 On Jan 21, 8:45 am, vsevolod afanassiev <vsevolod.afanass...(a)gmail.com> wrote: > I think on Windows Oracle works differently from UNIX. > Environment variables get ignored (most of them). Instead Oracle > excutable reads file oracle.key located in the same directory as > executable itself, > i.e. ORACLE_HOME\bin. This is plain text file, you can view it with > Notepad. > This file contains pointer to the Registry section > for this particular ORACLE_HOME. Then executable reads Registry to > get such information as ORACLE_HOME, etc. > > Please check that: > - c:\oracle\ora92 is indeed 32-bit ORACLE_HOME > - It contains file oracle.key > - This file points to Registry entries for 32-bit ORACLE_HOME > > Also please check that Registry entries for different ORACLE_HOME are > at the same level in the Registry, something like > > HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0 > HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1 > HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME2 > > In other words you don't have entry at the higher level > > HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE In addition to the above, currently active (default) Oracle Home is determined from the PATH variable: whichever comes first is default. This simple. But might cause service startup issues if two different Oracle versions are sharing the same Windows host, both registered services and both services start under LocalSystem account: one of them will use wrong home because they both will use system PATH for determining default home. As of OP's issue: you surely noticed that though you used lsnrctl v9 it connected to the currently running 64-bit 10.2 listener and had no problems communicating with it. That's the beauty of Oracle Net in action. lsnrctl communicates with the listener via TCP - you can control remote listeners with this utility the same way you control local one. Better than that: you don't have to install 32-bit listener alongside the 64-bit one. Bitness of the listener is irrelevant as it communicates with Oracle instances in platform-independent manner. You can even have several listeners running on different machines (possibly all on different platforms) presenting the same Oracle service (for example, for load-balancing or connect-time failover/ TAF.) To make sure your 32-bit 9i instance correctly registered its services with the 64-bit 10g listener (which PMON attempts automatically on instance startup via TCP at localhost:1521, unless you overridden LOCAL_LISTENER server parameter) issue STATUS command in lsnrctl and check if all expected services are listed. More information can be found in Oracle Net Administrator's Guide for your release. And why don't you consider running this 32-bit 9i instance in a VM? Indeed, will require another Windows license, but you'll get isolated, independent environment without the need to invest into additional hardware. And Sun's VirtualBox is free and pretty stable. Hth, Vladimir M. Zakharychev N-Networks, makers of Dynamic PSP(tm) http://www.dynamicpsp.com
From: bdbafh on 21 Jan 2010 12:24 On Jan 20, 7:07 pm, "Terry Dykstra" <tddyks...(a)forestoil.ca> wrote: > I have Oracle 10.2.0.4-64 bit running on W3K-64-bit. > Now I need to run a 32-bit 9.2.0.5 (yes I know, ouch) on this box. I cannot > get the listener to work. I use batch file to specifically point to the 9.2 > environment, but for some reason it points to the 64-bit version. > Any clues? > Regarding the database server software, running 32 bit Oracle database server software on a 64 bit OS is not supported. That's a good enough stopping condition for me. You need to run the 32 bit software on a 32 bit OS, be it on a physical or virtual server. -bdbafh > E:\dbscripts>rem set oracle 9.2 environment > E:\dbscripts>set ORACLE_HOME=C:\oracle\ora92 > E:\dbscripts>set > path=C:\oracle\ora92\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;\\CFOLDC1\fopublic\ > E:\dbscripts>set TNS_ADMIN=C:\oracle\ora92\network\admin > E:\dbscripts>c: > C:\>C:\oracle\ora92\bin\lsnrctl.exe > > LSNRCTL for 32-bit Windows: Version 9.2.0.5.0 - Production on 20-JAN-2010 > 17:03: > 59 > > Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved. > > Welcome to LSNRCTL, type "help" for information. > > LSNRCTL> version > Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521)) > TNSLSNR for 64-bit Windows: Version 10.2.0.4.0 - Production > TNS for 64-bit Windows: Version 10.2.0.4.0 - Production > Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version > 10.2.0.4 > .0 - Production > Windows NT Named Pipes NT Protocol Adapter for 64-bit Windows: > Version 1 > 0.2.0.4.0 - Production > Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version > 10.2.0 > .4.0 - Production,, > The command completed successfully > LSNRCTL> > > -- > Terry Dykstra
|
Next
|
Last
Pages: 1 2 Prev: Is AskTom Down...Again? Next: SQL to get total count for each colon delimited entry |