当前位置:  数据库>oracle

Oracle手工恢复案例(非归档模式)

    来源: 互联网  发布时间:2017-05-23

    本文导语: 手工恢复(非归档模式) 相关阅读: Oracle手工完全恢复案例(归档模式) 案例一:历史日志没有被覆盖 1.首先把数据库切成非归档模式: startup mountforce alter database noarchivelog; alter database open; 再次查看数据库模式 sys@SIQIAN11>arch...

手工恢复(非归档模式)

相关阅读: Oracle手工完全恢复案例(归档模式)

案例一:历史日志没有被覆盖

1.首先把数据库切成非归档模式:

startup mountforce

alter database noarchivelog;

alter database open;

再次查看数据库模式

sys@SIQIAN11>archive log list

Database log mode No Archive Mode

Automaticarchival Disabled

Archivedestination /backup/arch

Oldest online log sequence 15

Current log sequence 17

2.冷备

3.查看当前日志信息

sys@SIQIAN11>select group#,sequence#,archived,status from v$log;

 

GROUP# SEQUENCE# ARC STATUS

-------------------- --- ----------------

1 19 NO CURRENT

2 17 NO INACTIVE

3 18 NO INACTIVE

4.用test用户登录建表插入数据

test@SIQIAN11>create table t01(id int) tablespace test;

 

test@SIQIAN11>begin

2 for i in 1..10

3 loop

4 insert into t01 values(i);

5 end loop;

6 end;

7 /

commit;

再次查看当前日志

sys@SIQIAN11>select group#,sequence#,archived,status from v$log;

 

GROUP# SEQUENCE# ARC STATUS

---------- ------------- ----------------

1 19 NO CURRENT

2 17 NO INACTIVE

3 18 NO INACTIVE

说明这次变化记录在了第1组日志中,此时日志没有被覆盖。

5.关库删除数据文件

shutdown abort

[oracle@siqian siqian11g]$ rm -f /u01/oradata/siqian11g/test01.dbf

6.起库并查看要恢复的数据文件

startup

出错:

ORA-01157: cannot identify/lock data file 6 - see DBWR trace file

ORA-01110: data file 6: '/u01/oradata/siqian11g/test01.dbf'

查看要恢复的数据文件

sys@SIQIAN11>select file#,error from v$recover_file;

FILE# ERROR

---------- -----------------------------------------------------------------

1 UNKNOWNERROR

2 UNKNOWNERROR

3 UNKNOWNERROR

4 UNKNOWNERROR

5 UNKNOWNERROR

6 FILE NOT FOUND

 

6 rows selected.

7.还原数据文件并做恢复

[oracle@siqian siqian11g]$ cp /backup/cold/test01.dbf /u01/oradata/siqian11g/

sys@SIQIAN11>recover datafile 6;

Media recoverycomplete.

sys@SIQIAN11>alter database open;

8.验证

sys@SIQIAN11>select * from test.t01;

ID

----------

1

2

3

4

5

6

7

8

9

10

10 rows selected.

案例二:日志发生切换,历史日志被覆盖(只能作不完全恢复)

承接上面的例子,这次做完一些操作后切日志使其切换。

模拟环境:

1.test用户登录再在t01表中插入若干数据

test@SIQIAN11>begin

2 for i in 11..20

3 loop

4 insert into t01 values(i);

5 end loop;

6 end;

7 /

PL/SQL procedure successfully completed.

commit;

2.查看当前日志信息

 

sys@SIQIAN11>select group#,sequence#,archived,first_change# from v$log;

 

GROUP# SEQUENCE# ARC FIRST_CHANGE#

-------------------- --- -------------

1 19 NO 2200111

2 20 NO 2225498

3 18 NO 2179197

也就是说刚才的变化记录在了第1组中

3.切换日志,使其被覆盖

alter system switch logfile;

多切几次然后再次查看:

sys@SIQIAN11>select group#,sequence#,archived,first_change# from v$log;

GROUP# SEQUENCE# ARC FIRST_CHANGE#

---------- ------------- -------------

1 22 NO 2226207

2 23 NO 2226211

3 21 NO 2226205

现在序列19已经被覆盖。

而且t01表中有20条记录。

4.关库删除相应的数据文件

shutdown abort

[oracle@siqian siqian11g]$ rm -f /u01/oradata/siqian11g/test01.dbf

5.起库并查看要恢复的数据文件

ORA-01157: cannot identify/lock data file 6 - see DBWR trace file

ORA-01110: data file 6: '/u01/oradata/siqian11g/test01.dbf'

sys@SIQIAN11>select file#,error from v$recover_file;

FILE# ERROR

---------------------------------------------------------------------------

1 UNKNOWN ERROR

2 UNKNOWN ERROR

3 UNKNOWN ERROR

4 UNKNOWN ERROR

5 UNKNOWN ERROR

6 FILE NOT FOUND

 

6 rows selected.


    
 
 

您可能感兴趣的文章:

  • 切换Oracle的归档模式以及非归档模式
  • oracle的归档模式 ORACLE数据库归档日志常用命令
  • 更改Oracle数据库的归档模式
  • 查看修改Oracle10G归档日志空间的限制
  • 关于Oracle将目标数据库设为归档模式应该注意的问题
  • Oracle 删除归档日志实例
  • oracle 如何关闭打开归档日志
  • Oracle数据库归档模式的切换
  • Linux下Oracle归档日志自动清理脚本代码(sh)
  • Oracle中归档模式的定义简述
  • Oracle10g自动归档设置
  • 更改Oracle数据库到归档模式
  • oracle日志操作模式(归档模式和非归档模式的利与弊)
  • Oracle 11G闪回数据归档新功能详述
  • win平台oracle rman备份和删除dg备库归档日志脚本
  • Oracle相关:Rman Crosscheck删除失效归档
  • Oracle切换为归档模式的步骤及问题解决
  • Oracle新手教程 手工创建数据库的全部脚本及说明
  • 高手救命,很急——ORACLE817安装在UNIXWARE711上,手工启动数据库后在netasst中连接错误,高手帮我看看?
  • [小技巧]手工扩大Oracle数据库表空间的方法
  • Oracle数据库手工扩大表空间的方法
  • ORACLE DATAGUARD中手工处理日志v$archive_GAP的方法
  • Oracle数据库备份和恢复工具 RMan iis7站长之家
  • Oracle11.2 命令行手工最简创建数据库的过程
  • Linux下Oracle手工建库过程
  • 手工创建Oracle数据库控制文件的策略
  • 手工配置Oracle 10G Enterprise Manager过程
  • 在Oracle中手工对任务进行分区的方法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle数据库恢复后心得
  • 关于系统重装后Oracle数据库完全恢复的解决办法
  • oracle drop table(表)数据恢复方法
  • Oracle数据库备份和恢复工具 RMan
  • oracle备份恢复的具体方法
  • oracle中误删除表后恢复语句(FLASHBACK)
  • oracle冷备份恢复和oracle异机恢复使用方法
  • 在Oracle 10gR2中设定指定的恢复点实现轻松闪回
  • Oracle重做日志文件损坏或丢失后的恢复
  • Oracle11g备份和恢复功能的提高
  • 实战Oracle数据库备份与恢复
  • Oracle数据库冷备份的异地恢复
  • oracle下实现恢复一个丢失的数据文件的代码
  • 详解通过Backup Exec来实施Oracle灾难恢复
  • Oracle的恢复管理器及DBMS_JOB包分析
  • Oracle数据库文件恢复以及备份思路
  • Oracle数据库备份恢复最佳实践
  • oracle如何恢复被覆盖的存储过程
  • rman恢复方案和oracle异机恢复
  • oracle数据库创建备份与恢复脚本整理
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,