linux oracle删除恢复数据恢复,Linux下Oracle误删除数据文件恢复操作
检查数据文件的位置如下:
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/u01/app/Oracle/oradata/marven/system01.dbf
/u01/app/oracle/oradata/marven/undotbs1.dbf
/u01/app/oracle/oradata/marven/sysaux01.dbf
/u01/app/oracle/oradata/marven/users01.dbf
/u01/app/oracle/oradata/marven/marven01.dbf
在操作系统上删除数据文件
SQL> !rm /u01/app/oracle/oradata/marven/*.dbf
创建表发生报错
SQL> create table test2 as select * from dba_tables;
create table test2 as select * from dba_tables
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-01116: error in opening database file 1
ORA-01110: data file 1: '/u01/app/oracle/oradata/marven/system01.dbf'
ORA-27041: unable to open file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
SQL> !
这个时候千万不要关闭实例,检查进程dbwr进程的PID:
[oracle@hpserver2 dbs]$ ps -ef|grep dbw
oracle 9451 1 0 17:08 ? 00:00:00 ora_dbw0_marven
[oracle@hpserver2 dbs]$ cd /proc/9451[oracle@hpserver2 ~]$ cd /proc/9451/fd
[oracle@hpserver2 fd]$ ls -lrt
total 0
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 9 -> /u01/app/oracle/product/10.2.0/db_1/dbs/hc_marven.dat
l-wx------ 1 oracle oinstall 64 Jan 30 17:18 8 -> /u01/app/oracle/admin/marven/bdump/alert_marven.log
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 7 -> /u01/app/oracle/product/10.2.0/db_1/dbs/lkinstmarven (deleted)
l-wx------ 1 oracle oinstall 64 Jan 30 17:18 6 -> /u01/app/oracle/admin/marven/bdump/alert_marven.log
l-wx------ 1 oracle oinstall 64 Jan 30 17:18 5 -> /u01/app/oracle/admin/marven/udump/marven_ora_9443.trc
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 4 -> /dev/null
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 3 -> /dev/null
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 24 -> /u01/app/oracle/product/10.2.0/db_1/rdbms/mesg/oraus.msb
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 23 -> /u01/app/oracle/oradata/marven/temp02.dbf (deleted)
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 22 -> /u01/app/oracle/oradata/marven/marven01.dbf (deleted)
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 21 -> /u01/app/oracle/oradata/marven/users01.dbf (deleted)
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 20 -> /u01/app/oracle/oradata/marven/sysaux01.dbf (deleted)
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 2 -> /dev/null
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 19 -> /u01/app/oracle/oradata/marven/undotbs1.dbf (deleted)
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 18 -> /u01/app/oracle/oradata/marven/system01.dbf (deleted)
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 17 -> /u01/app/oracle/oradata/marven/control03.ctl
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 16 -> /u01/app/oracle/oradata/marven/control02.ctl
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 15 -> /u01/app/oracle/oradata/marven/control01.ctl
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 14 -> /u01/app/oracle/product/10.2.0/db_1/dbs/lkMARVEN
lrwx------ 1 oracle oinstall 64 Jan 30 17:18 13 -> /u01/app/oracle/product/10.2.0/db_1/dbs/hc_marven.dat
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 12 -> /dev/zero
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 11 -> /u01/app/oracle/product/10.2.0/db_1/rdbms/mesg/oraus.msb
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 10 -> /dev/zero
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 1 -> /dev/null
lr-x------ 1 oracle oinstall 64 Jan 30 17:18 0 -> /dev/null
将数据文件复制回去
[oracle@hpserver2 fd]$ cp 23 /u01/app/oracle/oradata/marven/temp02.dbf
[oracle@hpserver2 fd]$ cp 22 /u01/app/oracle/oradata/marven/marven01.dbf
[oracle@hpserver2 fd]$ cp 21 /u01/app/oracle/oradata/marven/users01.dbf
[oracle@hpserver2 fd]$ cp 20 /u01/app/oracle/oradata/marven/sysaux01.dbf
[oracle@hpserver2 fd]$ cp 19 /u01/app/oracle/oradata/marven/undotbs1.dbf
[oracle@hpserver2 fd]$ cp 18 /u01/app/oracle/oradata/marven/system01.dbf
将实例关闭后做介质恢复:
SQL> shutdown immediate
ORA-03113: end-of-file on communication channel
SQL> SQL> conn /as sysdba
Connected to an idle instance.
SQL> shutdown abort
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.
Total System Global Area 1610612736 bytes
Fixed Size 2084296 bytes
Variable Size 385876536 bytes
Database Buffers 1207959552 bytes
Redo Buffers 14692352 bytes
Database mounted.
SQL> recover database;
Media recovery complete.
数据库可以正常打开额,当然由于我这测试库几乎无事务,所以不用太多的复制操作即可完成
SQL> alter database open;
Database altered.
linux oracle删除恢复数据恢复,Linux下Oracle误删除数据文件恢复操作相关推荐
- linux 误删除mysql表能恢复吗_Linux下Oracle误删除数据文件恢复操作
检查数据文件的位置如下: SQLgt; select name from v$datafile; NAME----------------------------------------------- ...
- linux 误删除mysql表能恢复吗,Linux中误删除数据文件和归档日志的恢复方法
误删除前,归档日志2个,用户数据4480064条 复制代码 代码如下: [oracle@station90 datafile]$ sqlplus /nolog SQL> conn hr/hr C ...
- Oracle入门(十二I)之误删除数据的恢复方法
转载自 oracle误删除数据的恢复方法 今天主要以oracle数据库为例,介绍关于表中数据删除的解决办法.(不考虑全库备份和利用归档日志) 删除表中数据有三种方法: ·delete(删除一条记录) ...
- oracle怎么恢复删除数据库数据库文件,Oracle只有数据文件恢复数据库
Oracle只有数据文件恢复数据库 恢复前准备工作 1备份数据文件,文件路径为%ORACLE_NOME%/oradata/xxxx(xxxx为数据库实例) 2备份ORACLE安装路径下的D:\app\ ...
- oracle数据库备份恢复后乱码,RMAN做数据文件恢复后,查询表中数据出现乱码
今天在学习RMAN恢复数据库时,恢复后的数据库查询表出现乱码: 1:完全备份数据库 MAN>backup database format 'd:\orabackup\%u.bak'; 启动 ba ...
- php删除sql server 2008,MSSQL_SQL Server2008 数据库误删除数据的恢复方法分享,SQL Server中误删除数据的恢复本 - phpStudy...
SQL Server2008 数据库误删除数据的恢复方法分享 SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的 ...
- 误操作删除数据文件恢复案例讨论
一.实验说明: 本文转载EYGLE的<数据安全警示录>中的一个案例,也有在itpub上发表过http://www.itpub.net/thread-1721724-1-1.html,在这里 ...
- 拥有所有归档文件,但没有备份情况下的数据文件恢复
前提条件 1. 归档模式下. 2. 数据文件在当前控制文件之后创建. 否则会报ORA-01178错误. ORA-01178: file 5 created before last ...
- linux的子进程和父进程,[Linux进程]在父进程和子进程中分别对文件进行操作
[Linux进程]在父进程和子进程中分别对文件进行操作 发布时间:2020-04-10 19:36:49 来源:51CTO 阅读:917 作者:银河星君 /*子进程和父进程同时对一个文件进行写操作导致 ...
最新文章
- 人工智能与经济生产力:期待进化,而不是革命
- 大爷去取钱,银行把取款办成存款,大爷拒绝还钱,大家怎么看?
- python csv文件读取行列_使用Numpy读取CSV文件,并进行行列删除的操作方法
- python 进程池_python进程池
- TP引用样式表和js文件及验证码
- Equation漏洞混淆利用分析总结(下)
- 高并发下的 HashMap 为什么会死循环
- 价值98元的千神资源网模板
- 3章.Linux主机规划和磁盘分区
- SICP:Building Abstractions with Data
- php 页面执行时长
- rt-thread驱动篇(07)---STM32F429单片机SD卡驱动添加
- 删除word中自己插入的单行、双行线
- 基于 Vue 技术栈的微前端方案实践
- [verilog] 八位比较器
- 20 行代码编写一个简单的端口扫描器
- EndNote X9使用教程
- MATLAB NAR时间序列神经网络两种预测方法
- 全国各省手机号测试用例
- 快速排序的时间复杂度与空间复杂度
热门文章
- oracle 结果集已耗尽_java.sql.SQLException: 结果集已耗尽
- make找不到linux内核函数,linux内核make menuconfig出错
- js post中文乱码 php,AJAX之POST数据中文乱码如何解决
- 错误代码0x800f0950怎么解决_解决win10安装net framework 3.5失败(错误代码 0x800F0950)...
- php 栈实现历史记录后退,栈:如何实现浏览器的前进和后退功能
- c++-add two numbers 两个链表相加
- JConsole的使用手册 JDK1.5(转)
- 測试新浪微博@小冰 为代码机器人的一些方法
- Android权限Uri.parse总结
- Event Organization Site - To be published on 4th August