Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Need RMAN script command to close database

RE: Need RMAN script command to close database

From: Jack C. Applewhite <japplewhite_at_inetprofit.com>
Date: Fri, 09 Mar 2001 16:27:59 -0800
Message-ID: <F001.002C8D5E.20010309153153@fatcity.com>

Alex,

You could do what you want in a batch or shell script before calling RMan. Below is a snippet of a *.cmd file used by Veritas NetBackup to do a cold backup with RMan. It's for Windows2000 or NT, but you could do something similar on UNIX.
@REM --- Set the

variables --------------------------------------------------
---
...

@set OUTF=%~dpn0.out
...
@set TMPF=%~dpn0.tmp
...
@set ORACLE_HOME=d:\oracle\ora81
...
@set ORACLE_SID=mysid
...
@REM -------------------------------------------------------
--------------------
@REM Call Server Manager to shutdown the target database in
immediate priority.
@REM This lets current calls to the database complete, but
prevents further
@REM logons or calls.
@REM
@REM The shutdown-startup logic of this script can be
commented out if you know
@REM that the database will always be mounted and in a
consistent state before
@REM this script is executed.
@REM -------------------------------------------------------
--------------------
@echo connect internal/oracle > %TMPF%
@echo shutdown immediate >> %TMPF%
@echo exit >> %TMPF%

@echo # >> %OUTF%
@echo %ORACLE_HOME%\bin\%SVRMGR% >> %OUTF%
@type %TMPF% >> %OUTF%
%ORACLE_HOME%\bin\%SVRMGR% < %TMPF% >> %OUTF%
@REM -------------------------------------------------------
--------------------
@REM Startup the database in case it had crashed or was not
shutdown cleanly
@REM prior to starting this script. This will perform a
crash recover if
@REM it is needed. Use the RESTRICT option because we are
going to shutdown
@REM again right away and we don't want to let users in
during the short
@REM interval. The default init<SID>.ora file will be used
by startup. If it was
@REM moved, the name was changed, or ORACLE_HOME and
ORACLE_SID are not set, use
@REM the pfile= option on the startup command.
@REM -------------------------------------------------------
--------------------
@echo connect internal/oracle > %TMPF%
@echo startup restrict open >> %TMPF%
@echo shutdown immediate >> %TMPF%
@echo exit >> %TMPF%

@echo # >> %OUTF%
@echo %ORACLE_HOME%\bin\%SVRMGR% >> %OUTF%
@type %TMPF% >> %OUTF%
%ORACLE_HOME%\bin\%SVRMGR% < %TMPF% >> %OUTF%
@REM -------------------------------------------------------
--------------------
@REM Now we know that the database is cleanly closed and is
ready for a
@REM cold backup. RMAN requires that the database be started
and mounted
@REM to perform a backup.
@REM -------------------------------------------------------
--------------------
@echo connect internal/oracle > %TMPF%
@echo startup mount >> %TMPF%
@echo exit >> %TMPF%

@echo # >> %OUTF%
@echo %ORACLE_HOME%\bin\%SVRMGR% >> %OUTF%
@type %TMPF% >> %OUTF%
%ORACLE_HOME%\bin\%SVRMGR% < %TMPF% >> %OUTF%
@REM -------------------------------------------------------
--------------------
@REM Temporary file no longer needed.
@REM -------------------------------------------------------
--------------------
@if exist %TMPF% del %TMPF%

@REM -------------------------------------------------------
--------------------
@REM What kind of backup will we perform.
@REM -------------------------------------------------------
--------------------
@if "%NB_ORA_INCR%" == "1" goto differential

@if "%NB_ORA_CINC%" == "1" goto cumulative

@REM -------------------------------------------------------
-------------------- ... now call RMan and do the cold backup... ------------------------------------------------------------ -------------------- Hope this helps you. Jack -------------------------------- Jack C. Applewhite Database Administrator/Developer OCP Oracle8 DBA iNetProfit, Inc. Austin, Texas www.iNetProfit.com japplewhite_at_inetprofit.com -----Original Message----- Berindei Alex Sent: Friday, March 09, 2001 1:51 PM To: Multiple recipients of list ORACLE-L Hi smart guys, I need a RMAN script command to close a database, do you think this can be done. What I know is I can start the database, for "MOUNT" state to "OPEN" with next script, using a SQL command: { allocate channel type disk .... sql 'ALTER DATABASE OPEN'; } What I have? I have an open database in NOARCHIVE log mode (don't ask why) which I want to backup. What I want? To put database in MOUNT state from RMAN script, backup whole database, reopen the database. { ????HERE NEED COMMAND TO PUT DATABASE IN MOUNT STATE allocate channel type disk .... backup .... whole database in MOUNT state sql 'ALTER DATABASE OPEN'; } Thanks alex. -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Jack C. Applewhite INET: japplewhite_at_inetprofit.com Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).
Received on Fri Mar 09 2001 - 18:27:59 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US