Oracle Study之案例--重建数据库控制文件

来源:互联网 发布:美国网络美女排行榜 编辑:程序博客网 时间:2024/06/10 02:53

Oracle Study之案例--重建数据库控制文件

系统环境:

操作系统: Linux RH6

数据库:   Oracle 11gR2

   案例分析:

          数据库中所有的控制文件被意外破坏,非归档的库,在有trace备份的情况下,重建控制文件。

1、控制文件trace脚本

[oracle@rh6 ~]$ cat crctr.sql CREATE CONTROLFILE REUSE DATABASE "TEST3" NORESETLOGS  NOARCHIVELOG    MAXLOGFILES 10    MAXLOGMEMBERS 5    MAXDATAFILES 300    MAXINSTANCES 1    MAXLOGHISTORY 292LOGFILE  GROUP 1 '/u01/app/oracle/oradata/test3/redo01a.log'  SIZE 100M BLOCKSIZE 512,  GROUP 2 '/u01/app/oracle/oradata/test3/redo02a.log'  SIZE 100M BLOCKSIZE 512-- STANDBY LOGFILEDATAFILE  '/u01/app/oracle/oradata/test3/system01.dbf',  '/u01/app/oracle/oradata/test3/sysaux01.dbf',  '/u01/app/oracle/oradata/test3/undotbs01.dbf',  '/u01/app/oracle/oradata/test3/users01.dbf'CHARACTER SET ZHS16GBK;

2、启动Instance到nomount,重建controlfile

10:59:05 SYS@ test3 >startup nomount;ORACLE instance started.Total System Global Area  313860096 bytesFixed Size                  1336232 bytesVariable Size             213912664 bytesDatabase Buffers           92274688 bytesRedo Buffers                6336512 bytes10:59:41 SYS@ test3 >@/home/oracle/crctr.sqlControl file created.

3、告警日志

......CREATE CONTROLFILE REUSE DATABASE "TEST3" NORESETLOGS  NOARCHIVELOG    MAXLOGFILES 10    MAXLOGMEMBERS 5    MAXDATAFILES 300    MAXINSTANCES 1    MAXLOGHISTORY 292LOGFILE  GROUP 1 '/u01/app/oracle/oradata/test3/redo01a.log'  SIZE 100M BLOCKSIZE 512,  GROUP 2 '/u01/app/oracle/oradata/test3/redo02a.log'  SIZE 100M BLOCKSIZE 512-- STANDBY LOGFILEDATAFILE  '/u01/app/oracle/oradata/test3/system01.dbf',  '/u01/app/oracle/oradata/test3/sysaux01.dbf',  '/u01/app/oracle/oradata/test3/undotbs01.dbf',  '/u01/app/oracle/oradata/test3/users01.dbf'CHARACTER SET ZHS16GBKWARNING: Default Temporary Tablespace not specified in CREATE DATABASE commandDefault Temporary Tablespace will be necessary for a locally managed database in future releaseWed Jan 07 11:00:02 2015Successful mount of redo thread 1, with mount id 991126251Completed: CREATE CONTROLFILE REUSE DATABASE "TEST3" NORESETLOGS  NOARCHIVELOG    MAXLOGFILES 10    MAXLOGMEMBERS 5    MAXDATAFILES 300    MAXINSTANCES 1    MAXLOGHISTORY 292LOGFILE  GROUP 1 '/u01/app/oracle/oradata/test3/redo01a.log'  SIZE 100M BLOCKSIZE 512,  GROUP 2 '/u01/app/oracle/oradata/test3/redo02a.log'  SIZE 100M BLOCKSIZE 512-- STANDBY LOGFILEDATAFILE  '/u01/app/oracle/oradata/test3/system01.dbf',  '/u01/app/oracle/oradata/test3/sysaux01.dbf',  '/u01/app/oracle/oradata/test3/undotbs01.dbf',  '/u01/app/oracle/oradata/test3/users01.dbf'CHARACTER SET ZHS16GBKWed Jan 07 11:00:59 2015......

3、查看数据库状态

11:00:03 SYS@ test3 >select status from v$instance;STATUS------------MOUNTED11:00:27 SYS@ test3 >select file#,name ,checkpoint_change# from v$datafile;     FILE# NAME                                               CHECKPOINT_CHANGE#---------- -------------------------------------------------- ------------------         1 /u01/app/oracle/oradata/test3/system01.dbf                     333365         2 /u01/app/oracle/oradata/test3/sysaux01.dbf                     333365         3 /u01/app/oracle/oradata/test3/undotbs01.dbf                    333365         4 /u01/app/oracle/oradata/test3/users01.dbf                      33336511:00:46 SYS@ test3 >select file#,name ,checkpoint_change# from v$datafile_header;     FILE# NAME                                               CHECKPOINT_CHANGE#---------- -------------------------------------------------- ------------------         1 /u01/app/oracle/oradata/test3/system01.dbf                     333365         2 /u01/app/oracle/oradata/test3/sysaux01.dbf                     333365         3 /u01/app/oracle/oradata/test3/undotbs01.dbf                    333365         4 /u01/app/oracle/oradata/test3/users01.dbf                      333365

4、打开数据库

11:00:54 SYS@ test3 >alter database open;alter database open*ERROR at line 1:ORA-01113: file 1 needs media recoveryORA-01110: data file 1: '/u01/app/oracle/oradata/test3/system01.dbf'---打开数据库报错,需要做“media recovery”执行介质恢复:由于本库为非归档模式,只能通过current redolog来恢复查看当前日志组:[oracle@rh6 ~]$ sqlplus '/as sysdba'SQL*Plus: Release 11.2.0.1.0 Production on Wed Jan 7 11:02:12 2015Copyright (c) 1982, 2009, Oracle.  All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options11:02:12 SYS@ test3 >select member from v$logfile;MEMBER------------------------------------------------------------------------------------------------------------------------/u01/app/oracle/oradata/test3/redo01a.log/u01/app/oracle/oradata/test3/redo02a.log11:02:22 SYS@ test3 >select group#,sequence#,status from v$log;    GROUP#  SEQUENCE# STATUS---------- ---------- ----------------         2         12 INACTIVE         1         13 CURRENT11:00:59 SYS@ test3 >recover database until cancel;ORA-00279: change 333365 generated at 01/07/2015 10:30:26 needed for thread 1ORA-00289: suggestion : /u01/app/oracle/product/11.2.0/db_1/dbs/arch1_13_868275293.dbfORA-00280: change 333365 for thread 1 is in sequence #1311:01:42 Specify log: {<RET>=suggested | filename | AUTO | CANCEL}/u01/app/oracle/oradata/test3/redo01a.logLog applied.Media recovery complete.---恢复完成!11:02:46 SYS@ test3 >alter database open;alter database open*ERROR at line 1:ORA-01589: must use RESETLOGS or NORESETLOGS option for database openElapsed: 00:00:00.0111:02:52 SYS@ test3 >alter database open resetlogs;Database altered.---Database open成功!

查看告警日志:

alter database openErrors in file /u01/app/oracle/diag/rdbms/test3/test3/trace/test3_ora_3294.trc:ORA-01113: file 1 needs media recoveryORA-01110: data file 1: '/u01/app/oracle/oradata/test3/system01.dbf'ORA-1113 signalled during: alter database open...Wed Jan 07 11:01:40 2015ALTER DATABASE RECOVER  database until cancel  Media Recovery StartSerial Media Recovery startedORA-279 signalled during: ALTER DATABASE RECOVER  database until cancel  ...Wed Jan 07 11:02:44 2015ALTER DATABASE RECOVER    LOGFILE '/u01/app/oracle/oradata/test3/redo01a.log'  Media Recovery Log /u01/app/oracle/oradata/test3/redo01a.logIncomplete recovery applied all redo ever generated.Recovery completed through change 334001 time 01/07/2015 10:51:13Media Recovery Complete (test3)Completed: ALTER DATABASE RECOVER    LOGFILE '/u01/app/oracle/oradata/test3/redo01a.log'  alter database openErrors in file /u01/app/oracle/diag/rdbms/test3/test3/trace/test3_ora_3294.trc:ORA-01589: must use RESETLOGS or NORESETLOGS option for database openORA-1589 signalled during: alter database open...Wed Jan 07 11:03:04 2015alter database open resetlogsRESETLOGS after complete recovery through change 334001Resetting resetlogs activation ID 990996637 (0x3b11689d)Errors in file /u01/app/oracle/diag/rdbms/test3/test3/trace/test3_ora_3294.trc:ORA-00367: checksum error in log file headerORA-00322: log 1 of thread 1 is not current copyORA-00312: online log 1 thread 1: '/u01/app/oracle/oradata/test3/redo01a.log'Wed Jan 07 11:03:05 2015Errors in file /u01/app/oracle/diag/rdbms/test3/test3/trace/test3_m000_3336.trc:ORA-00316: log 1 of thread 1, type 0 in header is not log fileORA-00312: online log 1 thread 1: '/u01/app/oracle/oradata/test3/redo01a.log'Errors in file /u01/app/oracle/diag/rdbms/test3/test3/trace/test3_ora_3294.trc:ORA-00367: checksum error in log file headerORA-00322: log 2 of thread 1 is not current copyORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/test3/redo02a.log'Errors in file /u01/app/oracle/diag/rdbms/test3/test3/trace/test3_m000_3336.trc:ORA-00316: log 2 of thread 1, type 0 in header is not log fileORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/test3/redo02a.log'Wed Jan 07 11:03:18 2015Setting recovery target incarnation to 2Wed Jan 07 11:03:20 2015Checker run found 4 new persistent data failuresWed Jan 07 11:03:21 2015Assigning activation ID 991126251 (0x3b1362eb)Thread 1 opened at log sequence 1  Current log# 1 seq# 1 mem# 0: /u01/app/oracle/oradata/test3/redo01a.logSuccessful open of redo thread 1Wed Jan 07 11:03:22 2015MTTR advisory is disabled because FAST_START_MTTR_TARGET is not setWed Jan 07 11:03:23 2015SMON: enabling cache recoverySuccessfully onlined Undo Tablespace 2.Dictionary check beginningTablespace 'TEMPTS1' #3 found in data dictionary,but not in the controlfile. Adding to controlfile.Dictionary check completeVerifying file header compatibility for 11g tablespace encryption..Verifying 11g file header compatibility for tablespace encryption completedSMON: enabling tx recovery*********************************************************************WARNING: The following temporary tablespaces contain no files.         This condition can occur when a backup controlfile has         been restored.  It may be necessary to add files to these         tablespaces.  That can be done using the SQL statement:          ALTER TABLESPACE <tablespace_name> ADD TEMPFILE          Alternatively, if these temporary tablespaces are no longer         needed, then they can be dropped.           Empty temporary tablespace: TEMPTS1*********************************************************************Database Characterset is ZHS16GBKNo Resource Manager plan activereplication_dependency_tracking turned off (no async multimaster replication found)Starting background process QMNCWed Jan 07 11:03:27 2015QMNC started with pid=19, OS id=3341 LOGSTDBY: Validating controlfile with logical metadataLOGSTDBY: Validation completeCompleted: alter database open resetlogsWed Jan 07 11:13:27 2015Starting background process SMCOWed Jan 07 11:13:27 2015SMCO started with pid=22, OS id=3382

---至此,通过trace脚本,重建控制文件成功!






本文出自 “天涯客的blog” 博客,请务必保留此出处http://tiany.blog.51cto.com/513694/1600356

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 问道手游安全码忘了怎么办 问道手游账号密码忘了怎么办 坐一天一夜长途车腰疼怎么办 智联的简历一直说不完整怎么办 智联招聘简历投错了怎么办 投简历的公司写错面试时怎么办 从原单位辞职后档案一直没提怎么办 手机因一些不良软件扣费怎么办 苹果手机玩崩坏3卡顿怎么办 以前很帅现在变得好难看了怎么办 偷了室友东西被发现了该怎么办 自己不喜欢狗但室友养狗怎么办 夏天身上闷热出很多小红豆怎么办? 海棠果核小孩吃进肚子了怎么办 大了叶海棠有点烂根怎么办? 刚栽的月季花苗叶子蔫了怎么办 对节白蜡盆景叶尖干枯发黑怎么办 婴儿皮肤被大人指甲划出血怎么办 三岁宝宝吃了铝箔包装纸怎么办 元宝鱼烂身子烂鳍尾巴怎么办 大掌门2多余的侠客令怎么办 vivo手机关机后开不了机怎么办 红米手机重置后开机黑屏怎么办 dnf夏日套光环选错了怎么办 ios6微信版本低登录不了怎么办 捡了一个苹果手机有id怎么办 外阴长了个包出血很痛怎么办 腿上烫成泡了泡泡破了掉皮了怎么办 脚上的脚气小泡泡破了怎么办 吃鸡使用改名卡改名符号怎么办 爱派平板电脑密码忘了怎么办 电脑优酷下载总显示未知错误怎么办 文本文档打开时显字符丢失怎么办 系统文件过大无法放进u盘怎么办 淘宝上买的密钥激活不了怎么办 苹果手机玩游戏屏幕卡住不动怎么办 电脑系统安装好一排英文字怎么办 赴日签证申请表写错了怎么办 不知道自己想要做什么工作怎么办 三星note4微信出现闪退怎么办 魅蓝note6手机自动闪退怎么办