linux 误删除数据文件
2021/7/17 7:10:27
本文主要是介绍linux 误删除数据文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
问题:由于误删除数据文件,导致无法正常删除该表空间
以下实验对问题做了重现,并且提供了详细的解决方案,前提是故障出现后操作系统没有重启
实验:
1.创建表空间TEST001,并创建表A默认表空间为TEST001,并且插入数值
SYS@EMREP> create tablespace test001 datafile '/u01/app/oracle/oradata/EMREP/test001.dbf' size 1m;
Tablespace created.
SYS@EMREP> create table a(id number(10)) tablespace TEST001;
Table created.
SYS@EMREP> insert into a values(1);
1 row created.
SYS@EMREP> commit;
Commit complete.
2.模拟从操作系统删除数据文件
rm -rf /u01/app/oracle/oradata/EMREP/test001.dbf
3.此时删除表空间,发现报错
drop tablespace TEST001 INCLUDING CONTENTS AND DATAFILES
*
ERROR at line 1:
ORA-01116: error in opening database file 2
ORA-01110: data file 2: '/u01/app/oracle/oradata/EMREP/test001.dbf'
ORA-27041: unable to open file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
4.解决方案
1)找到进程号
ps -ef|grep dbw0 |grep -v grep
2)进入进程句柄位置
cd /proc/25334/fd
3)查看被删除文件句柄
ls -lrth
4)把该句柄拷贝回原位置
cp /proc/25334/fd/263 /u01/app/oracle/oradata/EMREP/test001.dbf
5)此时,可以正常删除该表空间,问题解决
SYS@EMREP> drop tablespace TEST001 INCLUDING CONTENTS AND DATAFILES;
Tablespace dropped.
这篇关于linux 误删除数据文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-03-30[译]漫画SELinux概念
- 2024-03-29linux 移动文件
- 2024-03-28linux .so file
- 2024-03-28Linux 磁盘管理
- 2024-03-28Linux学习笔记(十三)磁盘管理(一):磁盘分区
- 2024-03-26linux 创建 文件
- 2024-03-25使用SecureCRT对Linux vim进行颜色设置
- 2024-03-202019-2020-12 20199317 《Linux内核原理与分析》 第十二周作业
- 2024-03-20Linux运维的第二周总结
- 2024-03-13how to count number of directories in linux