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

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

999

积分

1

好友

942

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

我用recover命令恢复数据库到某一个时间点后就不能打开数据库
哪位大侠说说怎么解决,多谢多谢了!!
下面请看我的SQLplus操作
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup nomount;
ORACLE 例程已经启动。
SQL> startup nomount;
ORACLE 例程已经启动。

Total System Global Area  130838540 bytes
Fixed Size                   282636 bytes
Variable Size              96468992 bytes
Database Buffers           33554432 bytes
Redo Buffers                 532480 bytes
SQL> alter database mount
  2  ;

数据库已更改。

SQL> recover until time '2004-06-06 17:45';
完成介质恢复。

SQL> alter database open;
alter database open
*
ERROR 位于第 1 行:
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项

就这样无法打开数据库了。是不是我恢复的语句有问题恢复的时间有问题,应该是在mount后恢复吧。另外怎么用resetlogs,我有3个redo文件。该怎么用呢,多谢多谢了!!!


哦,大侠能给讲讲这两个命令的Oracle的内部机制吗??
recover until time '2004-06-06 17:45';
  alter database open resetlogs;
另外如果选择noresetlogs和选择resetlogs有什么区别,选择另外一个会不会有问题呢??


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

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

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

服务热线 : 13764045638  QQ: 47079569     邮箱:service@parnassusdata.com
2#
发表于 2017-4-26 11:18:30

8.        打开数据库:

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> shutdown immediate;                                                               
Database closed.                                                                        
Database dismounted.                                                                    
ORACLE instance shut down.                                                              
SQL> startup                                                                           
ORACLE instance started.                                                               
                                                                                       
Total System Global Area 2147483648 bytes                                               
Fixed Size                  2085424 bytes                                               
Variable Size             486542800 bytes                                               
Database Buffers         1644167168 bytes                                               
Redo Buffers               14688256 bytes                                               
Database mounted.                                                                       
Database opened.                       
数据库已经可以正常使用了。



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

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

服务热线 : 13764045638  QQ: 47079569   

回复 只看该作者 道具 举报

3#
发表于 2017-8-8 11:16:52
本帖最后由 biotwang 于 2017-8-8 11:19 编辑

简单来说,当你告知Oracle以resetlogs打开时,你实际上暗示了当前还有存在许多未提交的事务未能解决掉。
使用resetlogs就代表了在指定的SCN(某时间点后)后的事务不再处理,被初始化了,那么相应的历史的online redo logs也同时被清理重建了。一般情况下,需要resetlogs可能是因为当DBA在进行数据库备份恢复时候,前滚的过程中发现归档日志部分丢失,这就仅能进行不完全恢复了,需要从恢复的时间点开始开库,之后的事务被放弃。

回复 只看该作者 道具 举报

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

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

GMT+8, 2024-5-17 18:38 , Processed in 0.045385 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

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