linux删除数据文件无备份恢复
参考 : http://www.lunar2013.com/2013/06/linux-%E8%AF%AF%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%E6%81%A2%E5%A4%8D.html
Last login: Sun Jan 26 22:36:10 2014 from 10.10.10.5
root>/root#su - oracle
oracle>/home/oracle$sqlplus / as sysdba
SQL*Plus: Release 10.2.0.4.0 - Production on Wed Jan 29 02:32:35 2014
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
--查看表空间信息
SYS@ora10gr2>select tablespace_name from dba_tablespaces ;
TABLESPACE_NAME
------------------------------------------------------------
SYSTEM
UNDOTBS1
SYSAUX
TEMP
USERS
-- 查看数据文件信息
SYS@ora10gr2>select name from v$datafile ;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf
--创建测试表空间
SYS@ora10gr2>create tablespace ziyoo_test datafile '/home/oracle/ziyoo_test01.dbf' size 10m ;
Tablespace created.
--创建测试用户
SYS@ora10gr2>create user ziyoo default tablespace ziyoo_test identified by "oracle_4U" ;
User created.
--授予用户权限
SYS@ora10gr2>grant connect ,resource to ziyoo ;
Grant succeeded.
--以测试用户登录
SYS@ora10gr2>conn ziyoo
Enter password:
Connected.
--创建测试表
ZIYOO@ora10gr2>create table test_ziyoo ( name varchar2(300)) tablespace ziyoo_test;
Table created.
--插入测试数据
ZIYOO@ora10gr2>insert into test_ziyoo values ('Love you foreve,my baby,Happy new Year!') ;
1 row created.
ZIYOO@ora10gr2>commit ;
Commit complete.
ZIYOO@ora10gr2>select * from test_ziyoo ;
NAME
--------------------------------------------------------------------------------
Love you foreve,my baby,Happy new Year!
--删除数据文件
ZIYOO@ora10gr2>! rm -rf /home/oracle/ziyoo_test01.dbf
--确认是否删除
ZIYOO@ora10gr2>! ls -l /home/oracle/ziyoo_test01.dbf
ls: /home/oracle/ziyoo_test01.dbf: No such file or directory
ZIYOO@ora10gr2>conn ziyoo
Enter password:
Connected.
--查询数据
ZIYOO@ora10gr2>select * from test_ziyoo ;
NAME
--------------------------------------------------------------------------------
Love you foreve,my baby,Happy new Year!
ZIYOO@ora10gr2>conn / as sysdba
Connected.
--上面有数据是由于data buffer的原因,清空缓存
SYS@ora10gr2>alter system flush buffer_cache ;
System altered.
SYS@ora10gr2>conn ziyoo
Enter password:
Connected.
--验证数据丢失
ZIYOO@ora10gr2>select * from test_ziyoo ;
select * from test_ziyoo
*
ERROR at line 1:
ORA-01116: error in opening database file 5
ORA-01110: data file 5: '/home/oracle/ziyoo_test01.dbf'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3
-- 获取dbwr进程信息
ZIYOO@ora10gr2>! ps -ef | grep dbw
oracle 6400 1 0 02:49 ? 00:00:01 ora_dbw0_ora10gr2
oracle 6523 6388 12 02:58 pts/1 00:00:00 /bin/bash -c ps -ef | grep dbw
oracle 6525 6523 6 02:58 pts/1 00:00:00 grep dbw
--lsof 显示系统打开的文件
ZIYOO@ora10gr2>!/usr/sbin/lsof -p 6400
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
oracle 6400 oracle cwd DIR 8,3 4096 163398 /u01/app/oracle/product/10.2/db_1/dbs
oracle 6400 oracle rtd DIR 8,3 4096 2 /
oracle 6400 oracle txt REG 8,3 96725784 174475 /u01/app/oracle/product/10.2/db_1/bin/oracle
oracle 6400 oracle mem REG 8,3 112388 1060803 /lib/ld-2.3.4.so
oracle 6400 oracle mem REG 8,3 1551908 81891 /lib/tls/libc-2.3.4.so
oracle 6400 oracle mem REG 8,3 16808 1060804 /lib/libdl-2.3.4.so
oracle 6400 oracle mem REG 8,3 215180 81892 /lib/tls/libm-2.3.4.so
oracle 6400 oracle mem REG 8,3 108536 81893 /lib/tls/libpthread-2.3.4.so
oracle 6400 oracle mem REG 8,3 101924 1060811 /lib/libnsl-2.3.4.so
oracle 6400 oracle DEL REG 0,6 0 /SYSVa0a094cc
oracle 6400 oracle mem CHR 1,5 2777 /dev/zero
oracle 6400 oracle mem REG 8,3 1544 174538 /u01/app/oracle/product/10.2/db_1/dbs/hc_ora10gr2.dat
oracle 6400 oracle mem REG 8,3 47488 538610 /lib/libnss_files-2.3.4.so
oracle 6400 oracle mem REG 8,3 14104 1872904 /usr/lib/libnuma.so.1
oracle 6400 oracle mem REG 8,3 2628 1876353 /usr/lib/libaio.so.1.0.1
oracle 6400 oracle mem REG 8,3 5656445 173189 /u01/app/oracle/product/10.2/db_1/lib/libnnz10.so
oracle 6400 oracle mem REG 8,3 102317 167881 /u01/app/oracle/product/10.2/db_1/lib/libdbcfg10.so
oracle 6400 oracle mem REG 8,3 71921 172640 /u01/app/oracle/product/10.2/db_1/lib/libclsra10.so
oracle 6400 oracle mem REG 8,3 9082654 165671 /u01/app/oracle/product/10.2/db_1/lib/libjox10.so
oracle 6400 oracle mem REG 8,3 756215 172606 /u01/app/oracle/product/10.2/db_1/lib/libocrutl10.so
oracle 6400 oracle mem REG 8,3 1314712 172605 /u01/app/oracle/product/10.2/db_1/lib/libocrb10.so
oracle 6400 oracle mem REG 8,3 914160 172604 /u01/app/oracle/product/10.2/db_1/lib/libocr10.so
oracle 6400 oracle mem REG 8,3 8069 167992 /u01/app/oracle/product/10.2/db_1/lib/libskgxn2.so
oracle 6400 oracle mem REG 8,3 2425042 172639 /u01/app/oracle/product/10.2/db_1/lib/libhasgen10.so
oracle 6400 oracle mem REG 8,3 149502 164651 /u01/app/oracle/product/10.2/db_1/lib/libskgxp10.so
oracle 6400 oracle 0r CHR 1,3 2776 /dev/null
oracle 6400 oracle 1r CHR 1,3 2776 /dev/null
oracle 6400 oracle 2r CHR 1,3 2776 /dev/null
oracle 6400 oracle 3r CHR 1,3 2776 /dev/null
oracle 6400 oracle 4r CHR 1,3 2776 /dev/null
oracle 6400 oracle 5w REG 8,3 680 962968 /u01/app/oracle/admin/ora10gr2/udump/ora10gr2_ora_6389.trc
oracle 6400 oracle 6w REG 8,3 110983 343618 /u01/app/oracle/admin/ora10gr2/bdump/alert_ora10gr2.log
oracle 6400 oracle 7u REG 8,3 0 174533 /u01/app/oracle/product/10.2/db_1/dbs/lkinstora10gr2 (deleted)
oracle 6400 oracle 8w REG 8,3 110983 343618 /u01/app/oracle/admin/ora10gr2/bdump/alert_ora10gr2.log
oracle 6400 oracle 9u REG 8,3 1544 174538 /u01/app/oracle/product/10.2/db_1/dbs/hc_ora10gr2.dat
oracle 6400 oracle 10r CHR 1,5 2777 /dev/zero
oracle 6400 oracle 11r CHR 1,5 2777 /dev/zero
oracle 6400 oracle 12r REG 8,3 849408 172673 /u01/app/oracle/product/10.2/db_1/rdbms/mesg/oraus.msb
oracle 6400 oracle 13u REG 8,3 1544 174538 /u01/app/oracle/product/10.2/db_1/dbs/hc_ora10gr2.dat
oracle 6400 oracle 14uR REG 8,3 24 174539 /u01/app/oracle/product/10.2/db_1/dbs/lkORA10GR2
oracle 6400 oracle 15u REG 8,3 7356416 343496 /u01/app/oracle/oradata/orcl/control01.ctl
oracle 6400 oracle 16u REG 8,3 7356416 343497 /u01/app/oracle/oradata/orcl/control02.ctl
oracle 6400 oracle 17u REG 8,3 7356416 343498 /u01/app/oracle/oradata/orcl/control03.ctl
oracle 6400 oracle 18uW REG 8,3 513810432 343490 /u01/app/oracle/oradata/orcl/system01.dbf
oracle 6400 oracle 19uW REG 8,3 183508992 343492 /u01/app/oracle/oradata/orcl/undotbs01.dbf
oracle 6400 oracle 20uW REG 8,3 251666432 343491 /u01/app/oracle/oradata/orcl/sysaux01.dbf
oracle 6400 oracle 21uW REG 8,3 2111578112 343493 /u01/app/oracle/oradata/orcl/users01.dbf
oracle 6400 oracle 22uW REG 8,3 31465472 343510 /u01/app/oracle/oradata/orcl/temp01.dbf
oracle 6400 oracle 23r REG 8,3 849408 172673 /u01/app/oracle/product/10.2/db_1/rdbms/mesg/oraus.msb
oracle 6400 oracle 24uW REG 8,3 10493952 571688 /home/oracle/ziyoo_test01.dbf (deleted)
-- 信号量信息
ZIYOO@ora10gr2>! ls -ltar /proc/6400/fd/
total 25
dr-xr-xr-x 5 oracle oinstall 0 Jan 29 02:49 ..
dr-x------ 2 oracle oinstall 0 Jan 29 02:59 .
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 0 -> /dev/null
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 1 -> /dev/null
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 3 -> /dev/null
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 2 -> /dev/null
l-wx------ 1 oracle oinstall 64 Jan 29 02:59 5 -> /u01/app/oracle/admin/ora10gr2/udump/ora10gr2_ora_6389.trc
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 4 -> /dev/null
l-wx------ 1 oracle oinstall 64 Jan 29 02:59 6 -> /u01/app/oracle/admin/ora10gr2/bdump/alert_ora10gr2.log
l-wx------ 1 oracle oinstall 64 Jan 29 02:59 8 -> /u01/app/oracle/admin/ora10gr2/bdump/alert_ora10gr2.log
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 7 -> /u01/app/oracle/product/10.2/db_1/dbs/lkinstora10gr2 (deleted)
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 9 -> /u01/app/oracle/product/10.2/db_1/dbs/hc_ora10gr2.dat
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 10 -> /dev/zero
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 12 -> /u01/app/oracle/product/10.2/db_1/rdbms/mesg/oraus.msb
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 11 -> /dev/zero
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 15 -> /u01/app/oracle/oradata/orcl/control01.ctl
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 14 -> /u01/app/oracle/product/10.2/db_1/dbs/lkORA10GR2
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 13 -> /u01/app/oracle/product/10.2/db_1/dbs/hc_ora10gr2.dat
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 17 -> /u01/app/oracle/oradata/orcl/control03.ctl
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 16 -> /u01/app/oracle/oradata/orcl/control02.ctl
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 19 -> /u01/app/oracle/oradata/orcl/undotbs01.dbf
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 18 -> /u01/app/oracle/oradata/orcl/system01.dbf
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 21 -> /u01/app/oracle/oradata/orcl/users01.dbf
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 20 -> /u01/app/oracle/oradata/orcl/sysaux01.dbf
lr-x------ 1 oracle oinstall 64 Jan 29 02:59 23 -> /u01/app/oracle/product/10.2/db_1/rdbms/mesg/oraus.msb
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 22 -> /u01/app/oracle/oradata/orcl/temp01.dbf
lrwx------ 1 oracle oinstall 64 Jan 29 02:59 24 -> /home/oracle/ziyoo_test01.dbf (deleted)
ZIYOO@ora10gr2>exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
oracle>/home/oracle$cd /proc/6400/fd/
oracle>/proc/6400/fd$ls
0 1 10 11 12 13 14 15 16 17 18 19 2 20 21 22 23 24 3 4 5 6 7 8 9
--读取数据
oracle>/proc/6400/fd$cat 24 > ~/ziyoo01.dbf
oracle>/proc/6400/fd$ls -l /home/oracle/
total 45888
-rw-r--r-- 1 oracle oinstall 711 Jan 26 04:35 afiedt.buf
drwxr-xr-x 2 oracle oinstall 4096 Oct 18 07:22 Desktop
-rwxr-xr-x 1 oracle oinstall 5742 Jan 14 02:34 netca.rsp
-rw-r--r-- 1 oracle oinstall 8591630 Jan 2 11:30 oracle.txt
-rw-r--r-- 1 oracle oinstall 27337709 Jan 26 02:47 patch.log
-rw-r--r-- 1 oracle oinstall 178473 Feb 26 2008 README.html
drwxrwxr-x 8 500 dba 4096 Oct 18 11:18 rlwrap-0.37
-rw-r--r-- 1 oracle oinstall 251438 Oct 18 11:16 rlwrap-0.37.tar.gz
-rw-r--r-- 1 oracle oinstall 22172 Jan 14 03:25 test_clob.txt
-rw-r--r-- 1 oracle oinstall 5239 Jan 25 23:46 upgrade_info.log
-rw-r--r-- 1 oracle oinstall 10493952 Jan 29 03:02 ziyoo01.dbf
oracle>/proc/6400/fd$sqlplus / as sysdba
SQL*Plus: Release 10.2.0.4.0 - Production on Wed Jan 29 03:02:37 2014
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@ora10gr2>alter database datafile '/home/oracle/ziyoo_test01.dbf' offline ;
Database altered.
-- 更新控制文件信息
SYS@ora10gr2>alter database rename file '/home/oracle/ziyoo_test01.dbf' to '/home/oracle/ziyoo01.dbf' ;
Database altered.
SYS@ora10gr2>alter database datafile '/home/oracle/ziyoo01.dbf' online ;
alter database datafile '/home/oracle/ziyoo01.dbf' online
*
ERROR at line 1:
ORA-01113: file 5 needs media recovery
ORA-01110: data file 5: '/home/oracle/ziyoo01.dbf'
SYS@ora10gr2>recover datafile 5 ;
Media recovery complete.
SYS@ora10gr2>alter database datafile 5 online ;
Database altered.
SYS@ora10gr2>conn ziyoo
Enter password:
Connected.
ZIYOO@ora10gr2>select * from tab ;
TNAME TABTYPE
------------------------------------------------------------ --------------
CLUSTERID
----------
TEST_ZIYOO TABLE
--查询恢复后的数据
ZIYOO@ora10gr2>select * from test_ziyoo ;
NAME
--------------------------------------------------------------------------------
Love you foreve,my baby,Happy new Year!
linux删除数据文件无备份恢复的更多相关文章
- Linux Rsync实现文件同步备份(转载)
原文地址:Linux Rsync实现文件同步备份作者:夷北 转自:http://www.mike.org.cn/blog/index.php?load=read&id=639###pp=0 [ ...
- Linux删除乱码文件或者目录
Linux删除乱码文件或者目录 有时在Linux下面解压一些zip或者rar文件后会产生乱码文件或者目录,这个时候使用rm不能成功删除,需要使用一些特别的方法 来进行删除,下面是我经常使用的两种方法. ...
- Oracle-11g 从表空间删除数据文件
从表空间删除数据文件前提条件 如果欲从表空间中删除数据文件,那么该数据文件必须为空,否则将报出"ORA-03262: the file is non-empty"的错误. 从表 ...
- Linux下利用文件描述符恢复的成功失败实验
1.测试环境准备[oracle@redhat3 ~]$ uname -aLinux redhat3 2.6.32-573.el6.x86_64 #1 SMP Wed Jul 1 18:23:37 ED ...
- oracle中的sys用户(修改密码)/////Oracle删除表空间的同时删除数据文件 ///// Oracle中如何保证用户只有一个session登录
oracle中的sys用户(修改密码) (2011-07-01 09:18:11) 转载▼ 标签: it 分类: oracle 概念: SYS用户是Oracle中权限最高的用户,而SYSTEM是一个用 ...
- oracle删除数据文件
在我们详细介绍之前,我们必须说清楚一点:Oracle不提供如删除表.视图一样删除数据文件的方法,数据文件是表空间的一部分,所以不能“移走”表空间. 一.使用offline数据文件的方法 非归档模式使用 ...
- 如何恢复 Linux删除的文件
原理及普通文件的恢复 要想恢复误删除的文件,必须清楚数据在磁盘上究竟是如何存储的,以及如何定位并恢复数据.本文从数据恢复的角度,着重介绍了 ext2 文件系统中使用的一些基本概念和重要数据结构,并通过 ...
- Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份
这里我们讨论Linux操作系统的备份. 在生产环境,客户都会要求做全系统的数据备份,用于系统崩溃后的一种恢复手段.这其中就包含操作系统数据的备份恢复. 由于是生产环境,客户都会要求备份不中断业务,也就 ...
- docker定义数据卷及数据卷的备份恢复
前言:生产环境中使用docker时,往往需要对数据进行持久化(只有把容器导出为镜像,才能够保存写的数据,否则容器删除或者停止,所有数据都会没有),或者需要在多个容器之间进行数据共享,这必然涉及容器的数 ...
随机推荐
- easyBCD安装双系统,简单便捷,亲测好用
一 准备工作(在WIN7下操作完成) 1 从官网http://www.ubuntu.com/上下载镜像文件,大小接近700M.下载EasyBCD最新版安装之.特别声明:EasyBCD是一款很优秀的 ...
- 【高斯消元】Poj 1222:EXTENDED LIGHTS OUT
Description In an extended version of the game Lights Out, is a puzzle with 5 rows of 6 buttons each ...
- Recommender Systems引言
我想站在大神肩膀上...貌似是计算所的一个小伙伴... 总结的很好,看得出来有一定的功底.... 不过对于自己看过了的东西,就不愿意再翻看第二遍了.恰好这本书和项亮那本很像,就直接看这本书了.顺便记记 ...
- spoj 227
留着 #include <cstdio> #include <cstring> #include <cstdlib> #define lson l, m, rt & ...
- Android ViewPager的每个页面的显示与销毁的时机
大家在用viewPager的时候要创建一个pagerAdapter对象,用于给viewPager设置页面的. viewPager里面有一个container容器. viewPager的容器缓存3个显示 ...
- j2se jndi
http://blog.csdn.net/lldwolf/article/details/2299622 正如你可以看到,从JNDI中检索对象是相当方便,简单.通过使用JNDI来存储配置信息,无状态对 ...
- 关于haproxy hdr_reg(host) 的一些解释
I've recently taken over an environment using HAProxy, and I'm attempting to learn the config and wh ...
- Vim插件列表
01.helm(Vim-Swoop) 02.ap/vim-buftabline 03.wesleyche/SrcExpl 04.vim proc 05.vim shell 06.dhruvasagar ...
- Ubuntu 12.04搭建Andorid编译环境
1.安装JDK,Android 5.0开始,开始使用OpenJDK 1.7,4.4等低版本是Oracke JDK1.6 install java environment // install open ...
- android系统平台显示驱动开发简要:LCD基本原理篇『一』
平台信息:内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博客 ...