Forum OpenACS Q&A: Installing Oracle 8.1.7 on RedHat 7.2
I've been attempting to install Oracle 8.1.7 on Red Hat 7.2.... and it's been tough!
I've found a few useful links on the web: Learning Linux, an article by Bruno Mattarollo at Greenpeace's website and Pawprint and also checked Oracle's Metalink. It seems to me that all the articles cover some of the problems, but none of them seem to cover all of the problems.
Anyway, I was wondering what success people have had? Any pointers to documentation you have found useful?
I've not gotten that far with 8.1.7, but I know others who have (Furfly.net, for example).
I think Oracle's Linux support pretty much sucks, and don't understand why. It (or a *BSD variant if they decide they don't like Linux) is their best bet vs. MS SQL server + NT.
Brian, could you tell what has been tough? I installed 3 laptops running 7.2 and Oracle 8.1.7 for development and they all worked like a charm, no problems at all. I did used the laptop pre-selection of packages from RedHat 7.2 and installed some updates, but then using the instructions written in the document I wrote, everything went fine. You just have to make sure that you get the compat-* packages from the RedHat 7.2 CD.
I've installed Oracle 8i on SuSE 7.1 on two occasions, and, apart from the Java locale issues (Oracle's JRE doesn't like the locale variables set in the environment), it went smoothly. Much more smoothly than my recent install of 8.1.7 on HP-UX, which took me three tries before I managed to set the kernel parameter maxdsize, that Oracle conveniently mentions only on Metalink (a service requiring a support contract). At least SuSE put the Java locale details in the Oracle section of their website.
As another plug for SuSE, they also include a logical volume manager, VERY nice for systems that expect to need more storage over time. Their website also has a pretty good section on various issues related to Oracle on SuSE Linux.
The strange thing is that I've installed Oracle many times before, going back to version 7 and it's usually been quite straight-forward.
I think I'll start again from a clean sheet and follow one set of instructions at a time (starting with Bruno's seeing as I've got his attention! )
I'll be back!
You don't actually need to install the compatability libs anymore; Oracle has a patch to make that unnecessary. Here are the steps that worked for me; you can look at Bruno's guide, which is very good, for details on these steps:
- set LD_ASSUME_KERNEL to 2.2.5 (without this, the installer never comes up)
- at the first link error, edit $ORACLE_HOME/bin/genclntsh, remove "-z defs", and run the script, then click Retry to continue
- when you get to the Net8 configurator, stop and install Oracle's glibc patch (glibc-2.1.3-stubs.tar.gz)
- after the install finishes, run dbassist
It's especially important that you not run dbassist until after you've installed the patch; if you are getting 3113 "end of communication channel" errors while trying to create your database, you have forgotten this step. The voice of experience. :)
Brian, I didn't needed the stubs. At the time I wrote the document, RedHat 7.2 was not out yet ... but I tryied with it and it worked so I should just replace 7.1 by 7.2 :)
You mention JDK, watch out! You don't need any JDK installed in the machine to install Oracle, since it has it's own ... Maybe some of the problems are related to that ...? I did not install a JDK in the laptops that I had, maybe the problem lies there.
Anyway, I took most of the base of my docs from aD and adapted them to the reality I was seeing ;) so if you have some comments or updates, please let me know ... It's nice to have a good reference document, the problem is that Oracle is so complex and so big that maybe there is no way we can write the document that covers all the possible scenarios :)
Anyway, if you have any problem let me know... I will try to help you as much as I can
Wow! That's cool! Thanks Janine... I will take a look as soon as I get a blank machine to test with it!
This might be one the best news for all of us that have to install Oracle on Linux machines!
***** INSTALL JRE
***** CLEAN THE DIRECTORIES
mv oratab oratab.old
rm -rf Orainstall
rm dbhome oraenv coraenv
rm dbhome oraenv coraenv
***** FIX THE ENVIRONMENT (./install/oraparam.ini)
cd ./stage/Components/oracle.swd.jre/1.1.8/1/DataFiles/Expanded/linux mv jre jre.bak
ln -s /usr/local/jre jre
JRE_MEMORY_OPTIONS=-nojit -ms16m -mx32m
***** INSTALL BACKWARD_COMPATIBILIY RPMS:
rpm -Uvh compat-libstdc++-6.2-184.108.40.206
rpm -Uvh compat-glibc-6.2-220.127.116.11
rpm -Uvh compat-egcs-c++-6.2-18.104.22.168
rpm -Uvh compat-libs-6.2-3
rpm -Uvh compat-egcs-6.2-22.214.171.124
rpm -Uvh compat-egcs-objc-6.2-126.96.36.199
rpm -Uvh binutils-188.8.131.52.2-3
***** RUN INSTALLER (could take a few consecutive times running - i.e. ./runInstaller... screen dump/CTRL-C... ./runInstaller...)
Nearly upon completion, there will be an error stating "Error in invoking target install of makefile $ORACLE_HOME/ctx/lib/ins_ctx.mk", then you copy /tmp/env_ctx.mk to $ORACLE_HOME/ctx/lib/ and click on the retry button.
At the end you MIGHT get an error when setting up Net8 configuration. In a shell:
mv JRE JRE.bak
ln -s /usr/local/jre JRE
CONTINUE to FINISH.
download from Technet. (I'd love to see a contrary report.) That means it is available only in a CD pack (40 USD).
thanks again to everyone for all the help and support
I mailed my comments and tweaks to Bruno and he recommended I post them here. So here they are (with his responses):
On Mon, 04 Feb 2002, Brian Fenton wrote:
> 1. You say:
> "Use a text editor to edit the shell-mods.sh file in the /etc directory. You
> can download a prototype of the shell-mods.sh.txt file". You provide a link
> to the file.
> But then further down, you say:
> "Add the following lines to /etc/shell-mods.sh:"
> Some of the values you give for the variables are different from the ones in
> the shell-mods.sh.txt file. For example, the PATH variable has an extra
> $ORACLE_HOME/ctx/lib:. in the file. Some of the other variables are
> different too.
> Also, it might be a good idea to comment out the following line in the file
> because it's not needed until after the install:
> export NLS_LANG=NLS_LANG_V
Yes, the '/etc/shell-mods.sh' part is not very clear, and I go back several
times over that file. I should limit the mention of the content of it to
only one time!
> 2. The next one isn't incorrect, but I stupidly missed it. It might be a
> good idea to make it more explicit for stupid readers like me! You correctly
> mention that the runInstaller script is located in install/linux on the
> cd-rom. However, between that and telling the reader to actually run the
> program, you mention a few other things about the compat files and glibc
> etc. - in the mean-time of course, the stupid reader (me!) has forgotten to
> go the install/linux directory and instead runs the runInstaller from the
> root of the CD. I think it would be helpful to remind again about the path
> where you say the following:
> "Now we are ready to run the installer of Oracle.
> $ ./runInstaller"
True!!! It's a VERY important information that gets lost in the amount of text.
This is very good! Thanks!
> 3. This next one was a problem for me. After the Summary screen in the OUI,
> the user is asked to run root.sh. The first thing I noticed is that you tell
> the user to do an "su -" to change to root. I think maybe it should be just
> an "su" with no "-" because you want to keep the Oracle user's settings.
> Otherwise the SID is not set in root's environment etc.
Yes, you are right ... The fact is that I also have the same env set for root
(pointing to shell-mods.sh) but that is only my personal settings and not
the recommended one. This is also a very good comment!
> 4. More importantly than that, I found that the root.sh script I had was
> broken! I got the following error:
> Running Oracle8 root.sh script...
> ./root.sh: command substitution: line 1: unexpected EOF while looking for
> matching `''
> ./root.sh: command substitution: line 2: syntax error: unexpected end of
> ./root.sh: [: !=: unary operator expected
The following environment variables are set as:
> ORACLE_OWNER= oracle
> ORACLE_HOME= /apps/oracle/product/8.1.7
> ORACLE_SID= acs817
> I fixed this by downloading a correct version of root.sh from
> http://www.pawprint.net/linux/root.sh and editing the ORACLE_HOME value
> (twice) in that script.
> Of course, you have to keep the Installer window open during all this
> downloading and editing!
> It's interesting that you never got this error...
I will replace the root.sh file then... I am not sure why that one is broken (the
one you get from the site). Damned! I see ... in previous revisions of the docs
I have a link to download a different version of the root.sh ... I don't know why
I stupidely deleted that! Thanks!
> 5. The next problem I had was a real bummer and it was really a miracle that
> got me out of it! It was during the Listener Configuration. I selected No
> and suddenly the program hung on me. Thinking it was doing something I left
> it for 30 minutes and came back and it was still hanging. I nearly cried
> after having gotten so far in the install! For some reason, I decided to
> check what processes were running on the machine, one caught my eye: the
> listener process. For no reason, I decided to type "lsnrctl stop" (logged in
> as oracle) which is the command to stop the listener. Immediately, the
> installer program stopped hanging and returned to me! As I said, a miracle.
> I was then able to continue on with my install. Whew!
This should go in the troubleshooting section since I had that same problem once
while installing on RedHat 7.1 but I couldn't reproduce it anymore ... Don't know
why ... This also good advice.
Thanks a lot!!!
Before running the runInstaller script I downgraded the Binutils:
rpm -Uvh --force --nodeps binutils-184.108.40.206.2-3.i386.rpm
After the Oracle installation was done I upgraded them again:
rpm -Uvh binutils-220.127.116.11.8-9.i386.rpm
Thanks for an excellent document Bruno!
I guess I'll try it, but it'd be nice to know if anyone else has.
Note that you may have to reinstall the glibc patch after installing patches. I believe that this just relinks everything, rather than actually replacing patched files, though I admit I can't say for sure. It hasn't caused me any trouble. If you start getting the dreaded ORA-3113 "end of communication channel" error, there's a good chance that you need to reinstall the glibc patch.