Oracle归档模式下恢复-数据库完全恢复方法实例1

最初在关闭状态下进行开启数据库恢复的实例:

以pioneer_data表空间为例:

============================制造假损坏=======================================
1、备份表空间:
sql> alter tablespace pioneer_data begin backup;
Tablespace altered

sql> host copy C:\ORCL1122\disK8\PIONEER_DATA.DBF C:\orcl1122\beifen1;
1file(s) copied

sql> alter tablespace pioneer_data end backup;
Tablespace altered

2、 cmd -----sqlplus / as sysdba;登录dba

3、关闭数据库
sql> shutdown immediate;
数据库已经关闭
已经卸载数据库
ORACLE 例程已经关闭

4、删除C:\ORCL1122\disK8\PIONEER_DATA.DBF 文件,制造损坏。。

===============================开始修复============================================ 1、从头开始,cmd --sqlplus / as sysdba;登录dba copyright (c) 1982,2010,Oracle. All rights reserved. 已连接到空闲例程。 sql> 2、启动数据库sql> startup ORACLE 例程已经启动。 Total System Global Area 535662592 bytes Fixed Size 1375792 bytes Variable Size 272630224 bytes Database Buffers 255852544 bytes Redo Buffers 5804032 bytes 数据库装载完毕。 ORA-01157: 无法标识/锁定数据文件 8 - 请参阅 DBWR 跟踪文件 ORA-01110: 数据文件 8: 'C:\ORCL1122\disK8\PIONEER_DATA.DBF' 注:可以看出 数据文件8 出现了问题。 3、将数据文件8脱机 sql> alter database datafile 8 offline; 数据库已更改。 4、启动数据库open,除了数据文件8,其他正常使用。 sql> alter database datafile 8 offline; 数据库已更改。 5、查看数据文件的状态: sql> select file#,status from v$datafile; FILE# STATUS ---------- ------- 1 SYstem 2 ONLINE 3 ONLINE 4 ONLINE 5 ONLINE 6 ONLINE 7 ONLINE 8 OFFLINE 9 ONLINE 10 ONLINE 11 ONLINE 注:数据文件8脱机了 6、查看恢复信息 sql> select * from v$recover_file; FILE# ONLINE ONLINE_ ---------- ------- ------- ERROR CHANGE# ----------------------------------------------------------------- ---------- TIME -------------- 8 OFFLINE OFFLINE FILE NOT FOUND 0 注:error:数据文件not found 丢了。 7、复制备份文件到原来的位置: sql> host copy C:\orcl1122\beifen1\PIONEER_DATA.DBF C:\orcl1122\disk8; 已复制 1 个文件。 8、恢复文件sql> recover datafile 8; 完成介质恢复。 9、设置数据文件联机: sql> alter tablespace pioneer_data online; 表空间已更改。 10、查看数据文件状态: sql> select file#,status from v$datafile; FILE# STATUS ---------- ------- 1 SYstem 2 ONLINE 3 ONLINE 4 ONLINE 5 ONLINE 6 ONLINE 7 ONLINE 8 ONLINE 9 ONLINE 10 ONLINE 11 ONLINE 已选择11行。 11、检查数据: sql> conn nezha/nezha 已连接。 sql> select count(*) from sales; COUNT(*) ---------- 918843 ============================================OK==============================================

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...