Archive for the ‘installs’ Category

Free X windows emulator for running Oracle Installer

Thursday 19 April 2007

It’s often a pain getting X windows GUIs like the Oracle Installer and DBCA to run on Micrsoft Windows PC clients. Emulators like Reflection-X, KEA-Term, and Exceed work ok, but they cost money to licence and require source media and local admin rights to install. Those things can take an age to organise in large bureaucratic organisations.

An easy way round this is to download and run “DSL (Damn Small Linux) embedded”. It’s like having a linux desktop, but runs as a program inside Microsoft Windows. It’s free, and works as well or better than the commercial emulators for me - except on one old laptop without much memory where mouse control back inside Windows became erratic.

“DSL embedded” can be downloaded from here (look for dsl-[VERSION]-embedded.zip). Unzip that and run “dsl-base.bat” to start it up under Microsoft Windows. While using it, “Ctrl+Alt” switches back to Microsoft Windows applications. To close it, right click its desktop and select “power down”.

More details at damnsmalllinux.org

Silent installer on unix still needs X windows until 10g

Friday 2 February 2007

It’s not always easy to get X windows properly, or to get hold of X windows emulator software for Windows PCs. So it was a bit of a step backwards when the installer moved away from the ugly but effective clunky text display that it had in version 7 and below.

Running the installer in silent mode should have been a way around the need for X displays, but in fact it still fails (v8 through 9iR2) with an error like:

Exception java.lang.NullPointerException occurred..

So, even though you’re not going to use the installer GUI, oracle (for those versions) makes you have X windows all set up anyway. Quite annoying.

But - it’s fixed in 10g!

So oracle versions up to 7, and then from 10gR1 and above, don’t need X windows to install. Versions 8 up to 9iR2 do.

10gR2 Installation Guide says:

A.1.1 Reasons for Using Silent Mode or Noninteractive Mode
Use silent mode if you want to:

  • Complete an unattended installation, which you might schedule using operating system utilities such as at
  • Complete several similar installations on multiple systems without user interaction
  • Install the software on a system that does not have X Window System software installed on it

And 10gR1 Installation Guide for Unix Systems:

Automated Installation Methods Using Response Files
By creating a response file and specifying this file when you start the Installer, you can automate some or all of the Oracle Database installation. These automated installation methods are useful if you need to perform multiple installations on similarly configured systems or if the system where you want to install the software does not have X Window system software installed.

To run an install in silent mode, copy a template response file from Disk1/response/*.rsp on the installation media, and edit it to include the install choices you want. Then run the installer with options:

./runInstaller -silent -responseFile filename.rsp

Actually there’s a little more to it than that, but see the installation guide for the full details.

Old c compilers needed for 9i on Red Hat Linux

Friday 12 January 2007

9i on Red Hat Linux (with the exception apparently 32-bit on RH3) won’t install unless you revert the c compilers back to old versions. Horrible. But fixed (I am told) with oracle 10g.

And its not something you necessarily want to do just for the install - because future patchsets and even some one off bugfixes will need to use the old compilers also.

Also note that on Red Hat, you don’t get a choice with oracle word size - if you have built a 64 bit OS kernel, then you have to use 64 bit oracle, and (obviously) vice versa. That’s different to SPARC Solaris, where you can happily run 32 bit oracle on a 64 bit kernel (if for some strange reason you ever wanted to). However it is possible to run a 32 bit kernel OS on 64 bit hardware. “uname -a” tells you whether the OS kernel is 32 bit or 64 bit - if it reports “i386″, its 32 bit; “i386-64″ means its 64 bit.

On RH4, for both 64-bit and 32-bit:
1) Revert back to an old c compiler (as the root userid):
mv /usr/bin/gcc /usr/bin/gcc.orig
mv /usr/bin/g++ /usr/bin/g++.orig
ln -s /usr/bin/x86_64-redhat-linux-gcc32 /usr/bin/gcc
ln -s /usr/bin/x86_64-redhat-linux-g++32 /usr/bin/g++

2) Set environment variable (as the oracle userid before running installer):
export LD_ASSUME_KERNEL=2.4.19

On RH3 64-bit:
1) apply patch 3423540 before running the installer
2) Set environment variable (as the oracle userid before running installer):
export LD_ASSUME_KERNEL=2.4.19

On RH3 32-bit:
1) Revert back to an old c compiler (as the root userid):
mv /usr/bin/gcc /usr/bin/gcc323
mv /usr/bin/g++ /usr/bin/g++323
ln -sf /usr/bin/gcc296 /usr/bin/gcc
ln -sf /usr/bin/g++296 /usr/bin/g++

2) apply patch 3006854 before running the installer
3) Set environment variable (as the oracle userid before running installer):
export LD_ASSUME_KERNEL=2.4.19

(Caveat emptor: I’ve only done installs of RH4 64-bit and RH3 32-bit, so the information for the others is from metalink only.)

References:
RH3 32-bit
RH3 64-bit
RH4 32-bit
RH4 64-bit

9i unix startup / shutdown with listener password

Thursday 11 January 2007

Thanks to Laurent Schneider for tips on how to handle listener passwords in scripts. [Update 12-Jan-2007 - ammended script following Laurent's comment, and update 09-Feb-2007 - ammended script following Kevin's comment]

A system startup/shutdown shell script I just used that copes with listener passwords is below.

The location of the listener.ora file was /etc in my case, but that can be different in other servers. The script assumes oracle environment variables are all set correctly at login (the “su -”). This is 9i specific - as explained on Laurent Schneider’s blog post, things are different/better with 10g. Also is only designed to work with a single listener with the default name, LISTENER).

For this script to actually run at system startup/shutdown time, it needs to be linked into the /etc/rc*.d directories, at least /etc/rc3.d (the default startup/shutdown level) although I put it in the others also. That is, as root user:

(more…)