日期:2014-05-16  浏览次数:20483 次

重建控制文件详解
http://note.youdao.com/share/?id=d3991566cad33723db8b92183dcd9161&type=note
完整图文最新版
 
创造“重建控制文件脚本”需要在mount或open下进行。
alter database backup controlfile to trace as '/tmp/ctl..sql';

执行“重建控制文件脚本”需要在nomount的时候。
 

-- The following are current System-scope REDO Log Archival related
-- parameters and can be included in the database initialization file.
--
-- LOG_ARCHIVE_DEST=''
-- LOG_ARCHIVE_DUPLEX_DEST=''
--
-- LOG_ARCHIVE_FORMAT=%t_%s_%r.dbf
--
-- DB_UNIQUE_NAME="gs01ehis"
--
-- LOG_ARCHIVE_CONFIG='SEND, RECEIVE, NODG_CONFIG'
-- LOG_ARCHIVE_MAX_PROCESSES=2
-- STANDBY_FILE_MANAGEMENT=MANUAL
-- STANDBY_ARCHIVE_DEST=?/dbs/arch
-- FAL_CLIENT=''
-- FAL_SERVER=''
--
-- LOG_ARCHIVE_DEST_1='LOCATION=/paic/stg/oracle/10g/app102056/oracle/product/10.2.0/dbs/arch'
-- LOG_ARCHIVE_DEST_1='MANDATORY NOREOPEN NODELAY'
-- LOG_ARCHIVE_DEST_1='ARCH NOAFFIRM EXPEDITE NOVERIFY SYNC'
-- LOG_ARCHIVE_DEST_1='NOREGISTER NOALTERNATE NODEPENDENCY'
-- LOG_ARCHIVE_DEST_1='NOMAX_FAILURE NOQUOTA_SIZE NOQUOTA_USED NODB_UNIQUE_NAME'
-- LOG_ARCHIVE_DEST_1='VALID_FOR=(PRIMARY_ROLE,ONLINE_LOGFILES)'
-- LOG_ARCHIVE_DEST_STATE_1=ENABLE
--
-- Below are two sets of SQL statements, each of which creates a new
-- control file and uses it to open the database. The first set opens
-- the database with the NORESETLOGS option and should be used only if
-- the current versions of all online logs are available. The second
-- set opens the database with the RESETLOGS option and should be used
-- if online logs are unavailable.
-- The appropriate set of statements can be copied from the trace into
-- a script file, edited as necessary, and executed when there is a
-- need to re-create the control file.
--
--     Set #1. NORESETLOGS case
--
-- The following commands will create a new control file and use it
-- to open the database.
-- Data used by Recovery Manager will be lost.
-- Additional logs may be required for media recovery of offline
-- Use this only if the current versions of all online logs are
-- available.

-- After mounting the created controlfile, the following SQL
-- statement will place the database in the appropriate
-- protection mode:
--  ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE

STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "GS01EHIS" NORESETLOGS FORCE LOGGING NOARCHIVELOG
    MAXLOGFILES 32
    MAXLOGMEMBERS 3
    MAXDATAFILES 800
    MAXINSTANCES 8
    MAXLOGHISTORY 18696
LOGFILE
  GROUP 1 '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/redo01.log'  SIZE 100M,
  GROUP 2 '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/redo02.log'  SIZE 100M,
  GROUP 3 '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/redo03.log'  SIZE 100M
-- STANDBY LOGFILE

DATAFILE
  '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/system01.dbf',
  '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/undotbs01.dbf',
   '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/system01.dbf',
  '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/undotbs01.dbf',
  '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/sysaux01.dbf',
  '/paic/drsh101/stg/ehis/data/oradata/gs01ehis/use