SYS@ORA11GR2>select file_name,status,online_status from dba_data_files;
FILE_NAME STATUS ONLINE_
----------------------------------------------- --------- -------
/u01/app/oracle/oradata/ORA11GR2/users01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/system01.dbf AVAILABLE SYSTEM
/u01/app/oracle/oradata/ORA11GR2/example01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/ts_users01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/ts_users02.dbf AVAILABLE ONLINE
7 rows selected.
SYS@ORA11GR2>
SYS@ORA11GR2>alter tablespace ts_users read only;
Tablespace altered.
SYS@ORA11GR2>select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
--------------- ---------
SYSTEM ONLINE
SYSAUX ONLINE
UNDOTBS1 ONLINE
TEMP ONLINE
USERS ONLINE
EXAMPLE ONLINE
TS_USERS READ ONLY
7 rows selected.
SYS@ORA11GR2>select file_name,status,online_status from dba_data_files;
FILE_NAME STATUS ONLINE_
----------------------------------------------- --------- -------
/u01/app/oracle/oradata/ORA11GR2/users01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/system01.dbf AVAILABLE SYSTEM
/u01/app/oracle/oradata/ORA11GR2/example01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/ts_users01.dbf AVAILABLE ONLINE
/u01/app/oracle/oradata/ORA11GR2/ts_users02.dbf AVAILABLE ONLINE
7 rows selected.
SYS@ORA11GR2>
2) 查看控制文件位置
SYS@ORA11GR2>select name from v$controlfile;
NAME
--------------------------------------------------------------------------
/u01/app/oracle/oradata/ORA11GR2/control01.ctl
/u01/app/oracle/oradata/ORA11GR2/control02.ctl
SYS@ORA11GR2>
3) 转储控制文件到trace文件中
SYS@ORA11GR2>oradebug setmypid
Statement processed.
SYS@ORA11GR2>alter database backup controlfile to trace;
Database altered.
SYS@ORA11GR2>oradebug tracefile_name
/u01/app/oracle/diag/rdbms/ora11gr2/ORA11GR2/trace/ORA11GR2_ora_30816.trc
SYS@ORA11GR2>
4) 打开转储后文件,以下为部分内容
[oracle@ocmu ~]$
cat /u01/app/oracle/diag/rdbms/ora11gr2/ORA11GR2/trace/ORA11GR2_ora
| …… -- 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 "ORA11GR2" NORESETLOGS NOARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 292 LOGFILE GROUP 1 '/u01/app/oracle/oradata/ORA11GR2/redo01.log' SIZE 50M BLOCKSIZE 512, GROUP 2 '/u01/app/oracle/oradata/ORA11GR2/redo02.log' SIZE 50M BLOCKSIZE 512, GROUP 3 '/u01/app/oracle/oradata/ORA11GR2/redo03.log' SIZE 50M BLOCKSIZE 512 -- STANDBY LOGFILE DATAFILE '/u01/app/oracle/oradata/ORA11GR2/system01 |