200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > oracle 11g从DBF文件恢复数据

oracle 11g从DBF文件恢复数据

时间:2019-11-27 10:23:33

相关推荐

oracle 11g从DBF文件恢复数据

oracle 11g从DBF文件恢复数据

oracle 11g从DBF文件恢复数据sqlplus登录数据库备份控制文件停止数据库备份新数据库的DBF(实例名:XE)找到刚刚备份的trc文件打开trc后开始构建数据恢复命令开始恢复错误排查参考

oracle 11g从DBF文件恢复数据

因为C盘扩容,把临近的D盘数据备份到E盘,修改了注册表和服务,折腾了很久oracle实例还是无法启动,于是只能卸载重装oracle,从DBF文件恢复数据。

sqlplus登录数据库

sqlplus / as sysdba

备份控制文件

alter database backup controlfile to trace;

停止数据库

执行shutdown immediate命令停止数据库实例。

备份新数据库的DBF(实例名:XE)

把目录E:\oracle11g\app\oracle\oradata的实例XE备份

将需要还原的老数据库实例的所有DBF文件复制进去

找到刚刚备份的trc文件

一般在目录:E:\oracle11g\app\oracle\diag\rdbms\xe\xe\trace

打开trc后开始构建数据恢复命令

找到原来的log文件,老目录:E:\D_backup\oracle_11g\app\oracle\fast_recovery_area\XE\ONLINELOG

将原来的log文件复制到新的数据库相应的目录,E:\oracle11g\app\oracle\fast_recovery_area\XE\ONLINELOG

根据实际情况修改

CREATE CONTROLFILE REUSE DATABASE "XE" NORESETLOGS NOARCHIVELOGMAXLOGFILES 16MAXLOGMEMBERS 3MAXDATAFILES 100MAXINSTANCES 8MAXLOGHISTORY 292LOGFILEGROUP 1 'E:\ORACLE11G\APP\ORACLE\FAST_RECOVERY_AREA\XE\ONLINELOG\O1_MF_1_JGJ36F71_.LOG' SIZE 50M BLOCKSIZE 512,GROUP 2 'E:\ORACLE11G\APP\ORACLE\FAST_RECOVERY_AREA\XE\ONLINELOG\O1_MF_2_JGJ36FF6_.LOG' SIZE 50M BLOCKSIZE 512-- STANDBY LOGFILEDATAFILE'E:\ORACLE11G\APP\ORACLE\ORADATA\XE\SYSTEM.DBF','E:\ORACLE11G\APP\ORACLE\ORADATA\XE\SYSAUX.DBF','E:\ORACLE11G\APP\ORACLE\ORADATA\XE\UNDOTBS1.DBF','E:\ORACLE11G\APP\ORACLE\ORADATA\XE\USERS.DBF','E:\ORACLE11G\APP\ORACLE\ORADATA\XE\SYSTEM2.DBF','E:\ORACLE11G\APP\ORACLE\ORADATA\XE\SYSTEM3.DBF','E:\ORACLE11G\APP\ORACLE\ORADATA\XE\SYSTEM4.DBF','E:\ORACLE11G\APP\ORACLE\ORADATA\XE\SYSTEM5.DBF'CHARACTER SET AL32UTF8;

开始恢复

执行startup nomount,启动数据库到nomount状态

执行创建控制文件的SQL语句

恢复数据库,然后开始执行下面的命令

> RECOVER DATABASE> ALTER DATABASE OPEN;

错误排查

如果老数据库有TMP.DBF和CONTROL.BDF,可能导致控制文件的SQL执行失败。可以删除这两个DBF,然后修改sql重试。

参考

oracle10G-通过DBF文件恢复数据

作者:爱吃鱼的菲菲

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。