oracle通过表空间文件进行数据库恢复,oracle通过DBF恢复数据
前一段客户运行的项目数据库突然崩溃,并且没有进行数据备份。解决办法:
1,安装oracle 10g数据库并创建一个要恢复的数据库相同一的实例(注意:最好是新安装的数据库,并且安装的数据库尽量和要恢复的数据库的版本一致,并且实例必须一致,再次注意要创建一个相同的表空间);
2,以sysdba身份登录:对控制文件进行备份;
sqlplus /nolog;(此处不能加分号,否则黑屏窗口会一闪而过)
conn /as sysdba;登录
2,备份控件文件到udmp目录的trace文件 alter database backup controlfile to trace;
找到oracle的安装目录:..\oracle\product\10.2.0\db_1\admin\实例名\udump文件夹下(其中10.1的文件路径为 E:\oracle\product\10.1.0\admin\orcl,此处可在oracle的文件夹下搜索.trc进行查找),按修改时间降序,找到最近的trace文件。备份好。
3,shutdown immediate停止数据库实例;
4,备份..\oracle\product\10.2.0\oradata目录下的该实例文件夹(例如:orcl),接着将该实例文件夹删除(必须是全部删除吧要恢复的实例文件夹放到此位置,不能只把要恢复的DBF直接替换原来orcl,否则创建控制文件时会报如下错误),把需恢复的数据库的oradata目录下所有文件拷到此目录下。
5,以sysdba进入并执行startup nomount。把数据库启动到nomount状态。
6,从第2步备份出来trace文件中拷贝CREATE CONTROLFILE部分语句来重建控制文件:
注意:1,改为ARCHIVELOG;2,增加你的DBF文件,只增加*_DATA.DBF,*_TEMP.DBF不能在这添加
此处应根据实际情况增删表空间文件记录,如以下黑体部分则为新增记录。
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 454
LOGFILE
GROUP 1 'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\REDO01.LOG' SIZE 10M,
GROUP 2 'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\REDO02.LOG' SIZE 10M,
GROUP 3 'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\REDO03.LOG' SIZE 10M
-- STANDBY LOGFILE
DATAFILE
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSTEM01.DBF',
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\UNDOTBS01.DBF',
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSAUX01.DBF',
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\USERS01.DBF',
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\EXAMPLE01.DBF',
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\YC_DATA.DBF',
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\PE_DATA.DBF',
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\HS.ORA'
CHARACTER SET ZHS16GBK
;
7,RECOVER DATABASE;
(这个地方错误暂时不用理会。)
8ALTER DATABASE OPEN;
恢复完成,登录数据库进行测试。
(设置sqlplus粘贴)
转载自 http://blog.sina.com.cn/s/blog_a59b6d310102vat0.html
oracle通过表空间文件进行数据库恢复,oracle通过DBF恢复数据相关推荐
- pe系统备份oracle数据库,Oracle 通过表空间文件进行数据库恢复
操作系统:WindowsXP2 数据库:oracle 10g 由于数据库服务器崩溃,造成了无法进入系统进行数据库备份,只能从光盘的PE系统把oracle相关文件拷贝出来.对于拷贝出来的文件在测试机上进 ...
- oracle通过表空间文件进行数据库恢复,Oracle数据库表空间恢复方案_oracle
一. 用户表空间 错误: 在启动数据库时出现ORA-01157,ORA-01110或操作系统级错误例如ORA-07360,在关闭数据库(使用shutdown normal或shutdown immed ...
- Oracle11使用现在数据库文件,oracle11g 重装操作系统后,如何利用原有oracle表空间文件还原数据库...
oracle11g 重装操作系统后,如何利用原有oracle表空间文件还原数据库 最近由于系统重装,在还原dmp备份文件时,由于数据原因(用exp命令导出时表没有导出全部),导致系统不能正常运行.根据 ...
- oracle误删表空间 无法关闭,oracle 误删表空间文件启动不了数据库的解决办法
近日在搞rman备份恢复的实验,因为在虚拟机建立一个rman表空间,但是发现磁盘空间不够大,所以删除了,导致数据库启动不了了,解决办法如下: 1.误删rman表空间 SQL> ! rm -f / ...
- oracle 误删表空间文件启动不了数据库的解决办法
近日在搞rman备份恢复的实验,因为在虚拟机建立一个rman表空间,但是发现磁盘空间不够大,所以删除了,导致数据库启动不了了,解决办法如下: 1.误删rman表空间 SQL> ! rm -f / ...
- ORACLE数据库表空间文件在哪6,Oracle表空间数据文件移动
Oracle表空间数据文件移动 系统:windows oracle:10g 实现把用户表空间中的数据文件从某一个路径移动到里一个路径 一.针对可offline的非系统表空间 本例移动oracle的案例 ...
- 修改oracle的表空间文件scn,分享:bbed修改数据文件头推进scn与其他数据文件相同...
场景简介: 物理copy表空间数据文件,数据库发生完全检查点,删除该表空间下的数据文件,使该表空间数据文件头的scn与其他数据文件不一致. 场景构造: 1.创建测试表空间 SYS@orser> ...
- Oracle表格误删,Oracle误删表空间文件
今天在清理主机空间时,将一个表空间的数据文件误以为是dump文件,直接删除了,删完后才意识到有问题,不过已经恢复不了了( LINUX),此时数据库是可以正常的,但是有些数据库视图打不开了,比如dba_ ...
- oracle删除表空间文件后表空间无法删除
Oracle数据库中删除了表空间物理文件XXX.ora后导致用drop tablespace删除表空间失败,解决方法如下: 用sqlplus /nolog命令进入oracle数据库执行如下命令: sq ...
最新文章
- mysql 存储过程支持传入数组参数_问个小问题,关于存储过程传递数组参数
- 又遇到问题:wrong ELF class: ELFCLASS32 in Unknown on line
- BindingException: Invalid bound statement (not found)问题排查:SpringBoot集成Mybatis重点分析...
- C++阶段01笔记02【数据类型(整型、sizeof关键字、实型(浮点型)、字符型、转义字符、字符串型、布尔类型 bool、数据的输入)】
- 反思前进路上碰到困难时 应有的应对方法
- iis只能访问html页面,win2003 IIS6,能访问html页 但是不能访问aspx页解决办法汇总
- ui uview 安卓开发_uni-app UI框架之uview-ui使用教程
- Android多种View动画:EasyAndroidAnimations
- 访问网络共享时出现“拒绝访问”
- 解决:Unable to access jarfile xxx-0.0.1-SNAPSHOT.jar
- PicGo+码云Gitee建立国内高速图床
- asa802.k8-telnet for lan-base
- 20162306 2017-2018-1《程序设计与数据结构》 第11周学习总结
- PHP中钩子函数的实现与认识
- 北京逛街攻略总结篇(MM必看)
- MDK各芯片厂家安装支持包下载地址(含Stm32,Nuvoton等)
- php 模拟鼠标点击,Python全局模拟鼠标点击操作(以至善网无聊评价点击作为案例)...
- Pycharm 对python文件进行打包
- Content Provider启动浅析
- Cisco(60)——DHCPv6