这个小练习是针对控制文件全部丢失后怎么能快速的重建一个控制文件,快速的起库

1.备份控制文件到trace下

SQL> alter database backup controlfile to trace;

Database altered.

2.trace文本放在user_dump_dest的路径下

SQL> show parameter dump;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
background_core_dump string partial
background_dump_dest string /u01/app/oracle/diag/rdbms/ora
11gr2/ORA11GR2/trace
core_dump_dest string /u01/app/oracle/diag/rdbms/ora
11gr2/ORA11GR2/cdump
max_dump_file_size string unlimited
shadow_core_dump string partial
user_dump_dest string /u01/app/oracle/diag/rdbms/ora
11gr2/ORA11GR2/trace

3.打开alert查看生成的trace

[oracle@host02trace]$cd /u01/app/oracle/diag/rdbms/ora11gr2/ORA11GR2/trace
[oracle@host02 trace]$ cat alert_ORA11GR2.log Backup controlfile written to trace file /u01/app/oracle/diag/rdbms/ora11gr2/ORA11GR2/trace/ORA11GR2_ora_3790.trc
Completed: alter database backup controlfile to trace
Fri Dec 02 10:19:33 2016
Starting background process SMCO
Fri Dec 02 10:19:33 2016
SMCO started with pid=21, OS id=3907 ④按时间排序,最新生成文件排在最前
[oracle@host02 trace]$ ls -lt
total 500
-rw-r----- 1 oracle oinstall 50839 Dec 2 10:19 alert_ORA11GR2.log
-rw-r----- 1 oracle oinstall 1068 Dec 2 10:19 ORA11GR2_mmon_3778.trc
-rw-r----- 1 oracle oinstall 76 Dec 2 10:19 ORA11GR2_mmon_3778.trm
-rw-r----- 1 oracle oinstall 18936 Dec 2 10:16 ORA11GR2_ora_3790.trc
-rw-r----- 1 oracle oinstall 227 Dec 2 10:16 ORA11GR2_ora_3790.trm

4.复制create controlfile

[oracle@host02 trace]$ cat ORA11GR2_ora_3790.trc
CREATE CONTROLFILE REUSE DATABASE "ORA11GR2" RESETLOGS 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.dbf',
'/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf',
'/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf',
'/u01/app/oracle/oradata/ORA11GR2/users01.dbf',
'/u01/app/oracle/oradata/ORA11GR2/example01.dbf'
CHARACTER SET AL32UTF8
;

5.数据库启动到nomount状态

SQL> startup nomount
ORACLE instance started. Total System Global Area 830930944 bytes
Fixed Size 2257800 bytes
Variable Size 536874104 bytes
Database Buffers 289406976 bytes
Redo Buffers 2392064 bytes

6.根据trace文本重建控制文件

SQL> CREATE CONTROLFILE REUSE DATABASE "ORA11GR2" RESETLOGS  NOARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 '/u01/app/oracle/oradata/ORA11GR2/redo01.log' SIZE 50M BLOCKSIZE 512,
9 GROUP 2 '/u01/app/oracle/oradata/ORA11GR2/redo02.log' SIZE 50M BLOCKSIZE 512,
10 GROUP 3 '/u01/app/oracle/oradata/ORA11GR2/redo03.log' SIZE 50M BLOCKSIZE 512
11 -- STANDBY LOGFILE
12 DATAFILE
13 '/u01/app/oracle/oradata/ORA11GR2/system01.dbf',
14 '/u01/app/oracle/oradata/ORA11GR2/sysaux01.dbf',
15 '/u01/app/oracle/oradata/ORA11GR2/undotbs01.dbf',
16 '/u01/app/oracle/oradata/ORA11GR2/users01.dbf',
17 '/u01/app/oracle/oradata/ORA11GR2/example01.dbf'
18 CHARACTER SET AL32UTF8
19 ; Control file created.

7.起到open:报错,需要RESETLOGS

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open SQL> alter database open resetlogs; Database altered. SQL> select status from v$instance; STATUS
------------
OPEN

【练习】trace文本重建控制文件的更多相关文章

  1. oracle之 利用 controlfile trace文件重建控制文件

    一. 11g RAC 重建控制文件 1. --"create controlfile"命令生成到追踪文件中:alter database backup controlfile to ...

  2. Oracle 重建控制文件

    前些天在做Oracle数据库恢复测试时,因为一些异常操作导致控制文件出了问题,数据库无法正常使用,这里记录一下重建控制文件的操作 一.使用sysdba用户登入数据库 此时普通用户已无法链接数据库 二. ...

  3. Oracle 重建控制文件一例

    环境:OEL 5.7 + Oracle 10.2.0.5 背景:在Oracle的运维过程中,时常会遇到一些场景是需要重建控制文件才可以解决的.本文的场景可以通过复制控制文件到新路径,运行一段时间后,再 ...

  4. 【翻译自mos中文文章】重建控制文件的方法

    重建控制文件的方法 參考原文: How to Recreate a Controlfile (Doc ID 735106.1) 适用于: Oracle Database - Enterprise Ed ...

  5. 【翻译自mos文章】在重建控制文件之前应该考虑的事情

    在重建控制文件之前应该考虑的事情 来源于: Things to Consider Before Recreating the Controlfile (文档 ID 1475632.1) 适用于: Or ...

  6. Oracle控制文件多路复用以及Oracle备份重建控制文件

    控制文件中记录了oracle数据库的物理结构,也就是记录了数据库数据文件和日志文件的位置,控制文件中还记录了多种SCN,用这些SCN来确定数据文件和日志文件是否是正确的.如果不正确那么数据库就需要恢复 ...

  7. 重建控制文件ORA-12720

    重建过程出错:ORA-01503: CREATE CONTROLFILE failedORA-12720: operation requires database is in EXCLUSIVE mo ...

  8. 【Oracle】利用trace文件重建控制文件

    重建步骤: 1.生成trace文件: alter database backup controlfile to trace; 2.找到生成的trace文件: show parameter dump u ...

  9. oracle rac重建控制文件

    1.使用sqlplus连接到已经mount或open的rac数据库 sql> alter database backup controlfile to trace noresetlogs; 2. ...

随机推荐

  1. [rootfs]Yaffs2

    1. busybox: sudo apt-get install busybox(v1.21.1) 2. mkyaffs2image: http://www.aleph1.co.uk/gitweb/? ...

  2. [Perl] Getopt 函数来接收用户参数的使用

    我们在linux常常用到一个程序需要加入参数,现在了解一下perl中的有关控制参数的函数.getopt.在linux有的参数有二种形式.一种是–help,另一种是-h.也就是-和–的分别.–表示完整参 ...

  3. php没有开启Memcache扩展类时

    模拟PHP Memcache 类.当服务器没有开启Memcache扩展的时候.可以采用本类使用方法class_exists('Memcache') or include './Memcache.cla ...

  4. (C#) 创建单元测试(Unit Test).

    在VS2012中的右键中没有发现"Create Unit Test" 选项,原来需要安装个补丁: https://visualstudiogallery.msdn.microsof ...

  5. try catch 怎么写?

    除非必要,否则不在底层写try catch. 比如说,需要在catch里做一些处理,然后再抛出,一般不建议使用try catch掩盖程序出现的异常. try {     BuildQueryComma ...

  6. smartgit document Rebase

    The Rebase command allows you to apply commits from one branch to another. Rebase can be viewed as m ...

  7. [JS]Javascript对象与JSON的互转

    var obj = JSON.parse(json); //由JSON字符串转换为JSON对象 var json=JSON.stringify(obj); //将JSON对象转化为JSON字符 //此 ...

  8. OpenCV实现KNN算法

    原文 OpenCV实现KNN算法 K Nearest Neighbors 这个算法首先贮藏所有的训练样本,然后通过分析(包括选举,计算加权和等方式)一个新样本周围K个最近邻以给出该样本的相应值.这种方 ...

  9. file_get_content和curl的性能比较

    今天在获取微信一张二维码图片时发现使用php中的file_get_content方式和curl方式竟然相差了50倍左右,直接晕倒!!!

  10. JAVA坏境变量中的JAVA_HOME path classpath 的设置与作用。

    在把jdk安装到计算机中之后,我们来进行设置使java环境能够使用. 首先右键点我的电脑.打开属性.然后选择“高级”里面的“环境变量”,在新的打开界面中的系统变量需要设置三个属性“JAVA_HOME” ...