Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

999

积分

1

好友

942

主题
1#
发表于 2017-4-17 16:31:20 | 查看: 2997| 回复: 2
本帖最后由 ALLSTARS_ORACLE 于 2017-4-26 11:23 编辑

非归档无备份,掉电,硬盘损坏;
有现场的数据文件/日志文件/控制文件;
过程:(按照冷备份恢复方式实行)
/加载失败(控制文件有错)
/重建控制文件报错(index/user/temp3个表空间有问题),去掉3个表空间控制文件创建OK
/recover database using backup controlfile
指定了3个在线日志,最终:media recovery complete
/ alter database open resetlogs/
出错:ora-01092 :oracle连接中断!!



这种情况下,还有恢复的可能么?
偶不在现场,也拿不到更多的信息了~


嗯,他的数据库只有3天前的EXP备份;当时掉电现场也做了备份;
1、直接打开,控制文件报错;
2、尝试创建控制文件,也有错误,先后把INDEX/USER/TEMP的子句去掉,控制文件才能创建成功(怀疑3个表空间数据文件已经损坏);
Q1:创建控制文件后,这时如何判断日志文件完好呢?
3、尝试打开,报system需要恢复;
4、尝试恢复,并完成恢复;
5、打开数据库,才有了
alter database open resetlogs/
出错:ora-01092 :oracle连接中断!!

反反复复,多次都是这样的过程!!


BTW: DUL 怎么玩呢?



谢谢楼上! 我暂时无法与他联系到,估计已经用3天前的exp来恢复了~
经过这件事,已经给了这位朋友一个非常惨痛的教训了!


我跟他联系上后,如果能拿到数据库,就当一个备份恢复的研究了~

下载专业ORACLE数据库恢复工具PRM-DUL  For Oracle http://www.parnassusdata.com/

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638  QQ: 47079569     邮箱:service@parnassusdata.com
2#
发表于 2017-4-26 11:24:02
这种场景还是可以用prm-dul恢复的

可以看下教学视频:http://www.tudou.com/programs/view/GDg_dXvNnqs/

也可以联系我们诗檀软件恢复

诗檀软件专业数据库修复团队

服务热线 : 13764045638  QQ: 47079569   

回复 只看该作者 道具 举报

3#
发表于 2017-4-26 11:25:36
Database Crashed With ORA-1092 error (Doc ID 1448602.1)        To BottomTo Bottom       

In this Document
Symptoms
Cause
Solution

This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.
APPLIES TO:

Oracle Database - Enterprise Edition - Version 9.2.0.8 and later
Information in this document applies to any platform.
SYMPTOMS

Database instance crashed with the following error in alert.log:

Wed Nov 02 06:23:51 2011
Non critical error ORA-00001 caught while writing to trace file "/opt/diag/rdbms/prd1/PRD1/trace/PRD1_arc1_2076702.trc"
Error message: IBM AIX RISC System/6000 Error: 5: I/O error
Additional information: 1
Writing to the above trace file iWed Nov 02 06:29:56 2011
USER (ospid: 643220): terminating the instance due to error 1092
Wed Nov 02 06:29:56 2011
ORA-1092 : opitsk aborting process
Instance terminated by USER, pid = 643220


Looking at entries in alert.log prior to crash, following is seen:

a. DBWR process experiencing I/O error:

Wed Nov 02 06:23:38 2011
Non critical error ORA-00001 caught while writing to trace file "/opt/diag/rdbms/prd1/PRD1/trace/PRD1_dbw0_2875438.trc"
Error message: IBM AIX RISC System/6000 Error: 5: I/O error
Additional information: 1
Writing to the above trace file is disabled for now on...


b. Entries in alert.log is incomplete:

Writing to the above trace file iWed Nov 02 06:29:56 2011 -----> as you see here the output is truncated.


2. MMON process trace file shows:

Unix process pid: 1949800, image: oracle@prdserver (MMON)
*** 2011-11-02 06:23:43.879
Taking over instance termination because the instance terminator (ospid: 2875438) is dead
===> 2875438 is the OS PID of DBW0 process which encountered the I/O error and is dead.
3. The instance was then terminated by USER process with the OS PID 643220.

Trace file for this process shows:

Taking over instance termination because the instance terminator (ospid: 2191470) is dead
kjzduptcctx: Notifying DIAG for crash event
----- Abridged Call Stack Trace -----
ksedsts()+644<-kjzdssdmp()+444<-kjzduptcctx()+272<-kjzdicrshnfy()+96<-ksuitm()+1284<-ksuitr()+92<-ksu_dispatch_tac()+372<-kdifxs1()+468<-kdifxs()+28<-qerixtFetch()+940
<-qerilFetch()+276<-opifch2()+7136<-opifch()+60<-opiodr()+3608<-rpidrus()+536<-skgmstack()+208
<-rpidru()+144<-rpiswu2()+1124<-rpidrv()+2892<-rpifch()+80
----- End of Abridged Call Stack Trace -----

*** 2011-11-02 06:29:56.242
USER (ospid: 643220): terminating the instance due to error 1092
5. OS logs (/var/log on AIX) reports I/O errors :

Date/Time: Wed Nov 2 06:29:52 CUT 2011

Description
USER DATA I/O ERROR

Probable Causes
ADAPTER HARDWARE OR MICROCODE
DISK DRIVE HARDWARE OR MICROCODE
SOFTWARE DEVICE DRIVER
STORAGE CABLE LOOSE, DEFECTIVE, OR UNTERMINATED


CAUSE

It could be that either the datafiles are offline/corrupted:

Check the OFFLINE files:

select file#, status, name from v$datafile where status not in ('SYSTEM', 'ONLINE');
OR
There is a problem in the password file (orapw) found in $ORACLE_HOME/dbs which was created after the database creation. Therefore resulted in a sync issue and ultimately causing an additional error message:
ORA-01990: error opening password file $ORACLE_HOME/dbs/orapw.

OR

DBW0 crashed due to I/O errors. This in turn caused the instance to be terminated as termination of background process will cause the instance to crash .

SOLUTION

Datafiles Corrupted/Offline:
Check if you have a good backup from which you can restore any  problematic data file.
1) First restore the problematic datafiles
2) Mount the database and ONLINE those datafiles

SQL> startup mount;
SQL> alter database datafile  file1#, .. , filen# online;
3) Recover the database

SQL> recover database;

4) Open database

SQL > alter database open ;


I/O errors

Contact your System/Unix administrator and rectify the hardware problem causing I/O error.

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-5-17 19:23 , Processed in 0.054131 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569