Operating System - HP-UX
1753770 Members
5052 Online
108799 Solutions
New Discussion юеВ

Re: oracle database instances not starting

 
Rick Garland
Honored Contributor

Re: oracle database instances not starting

Hate to say it, but "been there, done that".

Have tested all variables using the echo command and the whence command. All reports as expected and all can be found with no problems or errors to report.

Have watched the processes as I run the oracle start and the SIDs do not start. Have checked for the return on the command and I am getting $?=0. so it thinks all is OK. I can start the SIDs manually and everything is OK using that method but I am not about to revert to manual intervention for these servers.
John Poff
Honored Contributor

Re: oracle database instances not starting

Rick,

Can you find any information in any kind of Oracle logs for the startup? The 8.1.6 dbstart script I have shows 'sqlplus /nolog' for the command. Is their a command switch for sqlplus to make it verbose?

The DBAs here always roll their own start/stop scripts. Now I see why!

JP
Rick Garland
Honored Contributor

Re: oracle database instances not starting

I am going to look at the nolog option. But something else I found. I also have a new install (same HW and OS) with oracle 8.1.5 - and guess what, it works!

On the 8.1.6, ran the $ORACLE_HOME/bin/dbstart as oracle and what I see is what has been reported so far.

On the 8.1.5 I run the dbstart (as oracle) and the SIDs start! There is output indicating it connected, database mounted, sizes,etc., and then the warm start message.
John Poff
Honored Contributor

Re: oracle database instances not starting

That's weird! I have 8.1.5 on this box so I did a 'diff' between the 8.1.5 dbstart and the 8.1.6 dbstart. The only difference is the LD_LIBRARY_PATH line, which the comment says was added for a bug.

JP
Jim Turner
HPE Pro

Re: oracle database instances not starting

Rick,

Please excuse the stupid question: Do you have a valid /etc/oratab file with your desired instances set to "Y" so they will start when your rc script runs?

Just Easter Eggin' . . . . .

Cheers,
Jim
Rick Garland
Honored Contributor

Re: oracle database instances not starting

oratab has the SIDs set to Y.

Goin home now. Thinkin on rollin my own as well (dbstart that is)
Volker Borowski
Honored Contributor

Re: oracle database instances not starting

Rick,

I did not figure out, if you do "su" or not.

If not, does root belong to the os-group that was linked to oracle upon install. It should be dba and/or oper as default.

If root is no os-group dba, the connect internal will not succeed at all. See sample below. Now what strikes is that the RC is 0 !
This might be confusing, esp. if the error messages are suppressed for some reason.

Do not know if this helps.
Volker


# id
uid=0(root) gid=1(other)
# ORACLE_SID=WOD
# ORACLE_HOME=/oracle/WOD
# export ORACLE_SID ORACLE_HOME
# /oracle/WOD/bin/svrmgrl <> connect internal
> startup
> EOF

Oracle Server Manager Release 3.0.6.0.0 - Production

(c) Copyright 1999, Oracle Corporation. All Rights Reserved.

Oracle8 Enterprise Edition Release 8.0.6.3.0 - Production
PL/SQL Release 8.0.6.3.0 - Production

SVRMGR> Password:
Password:
ORA-01031: insufficient privileges
SVRMGR> ORA-01031: insufficient privileges
SVRMGR>
Server Manager complete.
# echo $?
0
#

Joseph C. Denman
Honored Contributor

Re: oracle database instances not starting

Rick,

I know the dbstart say it is warm started, but have you check your alert logs to see what oracle says is happening. The alert log will be in the background_dump_dest directory. You can find this in your init file.

...jcd...

If I had only read the instructions first??
John Poff
Honored Contributor

Re: oracle database instances not starting

Rick,

Just one more idea, try copying the 'dbstart' script from the 8.1.5 bin directory and running it to start the 8.1.6 instance. If that script fails also, I'd suspect something in the oracle setup - permissions, environment variables, etc. If that script works, it is a scripting problem with the 8.1.6 script.

At least that might eliminate one variable.

JP
Pedro Sousa
Honored Contributor

Re: oracle database instances not starting

Hi Rick!
I hope this explains/solves your problem.
from: http://forums.itrc.hp.com/cm/QuestionAnswer/1,1150,0x0c0c6d96588ad4118fef0090279cd0f9,00.html

The following is from MetaLink:

Problem Description
===================

"dbstart" is a shellscript used on Unix platforms to start databases
listed in the "oratab" file. It is often called from system startup
scripts.

The "dbstart" script shipped with all versions of Oracle up to and
including 8.1.6 does not start any 8.1.6 instances if they are down.
"dbstart" will report "Database warm started" rather than starting
the instance. This problem only affects 8.1.6 (or later) instances.

The change in the banner may affect users custom startup / shutdown
scripts.

"dbshut" has no problem.

Please note there are 2 related issues which should be born in mind
when changing any startup / shutdown scripts:

Advance notification of Server Manager desupport [NOTE:74943.1]
Advance notification of CONNECT INTERNAL desupport [NOTE:50508.1]


Solution Description
====================

Enterprise Edition Workaround
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The workaround is to change the dbstart script to look for the string
"Oracle8i Enterprise Edition" instead of "PL/SQL" by making the following
changes:

1. Save a copy of the 8.1.6 $ORACLE_HOME/bin/dbstart script

2. Edit the script and change the 'awk' lines
from:
VERSION=`$ORACLE_HOME/bin/svrmgrl command=exit | awk '
/PL/SQL (Release|Version)/ {substr($3,1,3) ;
print substr($3,1,3)}'`
to:
VERSION=`$ORACLE_HOME/bin/svrmgrl command=exit | awk '
/PL/SQL (Release|Version)/ { print substr($3,1,3); exit }
/Oracle7 Server (Release|Version)/ { print substr($4,1,3); exit }
/Oracle8i Enterprise Edition (Release|Version)/ { print substr($5,1,3); exit }
/Oracle8i (Release|Version)/ { print substr($3,1,3); exit }'`

Additionally for platforms which set LD_LIBRARY_PATH in the dbstart
script you should change the following:
From:
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${ORACLE_HOME}/lib ;
export LD_LIBRARY_PATH
To:
LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${LD_LIBRARY_PATH} ;
export LD_LIBRARY_PATH


3. Copy the updated "dbstart" to any location it is expected to reside.
Eg: system startup scripts often run /usr/local/bin/dbstart.

IMPORTANT: Do not overwrite existing scripts without taking a backup
copy first as the script you are overwriting may have
been modified.

NOTE: This workaround will only work for Oracle8 Enterprise Editions
Similar workarounds may be used for other editions.


Explanation
-----------

The problem is caused by a change in the Oracle banner which is output
by Oracle version 8.1.6. The banner no longer includes a PL/SQL line
and so the test in "dbstart" for a PL/SQL version returns a blank string
which in turn causes the step to startup the instance to be skipped.


References
----------

The problem is reported in [BUG:1154931]

The "oratab" file typically exists in either /etc/oratab or
/var/opt/oracle/oratab

[NOTE:50508.1] - Advance notification of CONNECT INTERNAL desupport
[NOTE:74943.1] - Advance notification of Server Manager desupport

hope this helps.
good luck.