有关extdelete恢复测试
客户意外rm掉了数据文件,导致数据库无法打开,由于没有完整的备份和归档,需要使用别的方法,而客户又关闭了数据库,导致无法使用文件描述符恢复,就要使用linux上别的方法了,现记录使用extundelete来恢复丢失的文件
[root@server119 ~]# cd
/db
[root@server119 db]# ll
总计 32
drwxrwxr-x 2 oracle
oinstall 16384 2011-05-06 lost+found
-rwxr-xr-x 3 oracle
oinstall 21096 08-02 18:05 odu
drwxrwxr-x 7 oracle
oinstall 4096 2011-05-06 oracle10g
[root@server119 db]# rm
-rf odu
[root@server119 db]# df
-h
文件系统
容量 已用 可用 已用% 挂载点
/dev/sda3
39G 26G 12G 70% /
/dev/sda10
331G 312G 2.3G 100% /opt
/dev/sda9
20G 175M 19G 1% /tmp
/dev/sda8
20G 439M 18G 3% /var
/dev/sda7
20G 11G 8.3G 56% /home
/dev/sda6
20G 1.7G 17G 9% /vol
/dev/sda2
331G 310G 4.1G 99% /db
/dev/sda1
2.0G 42M 1.8G 3% /boot
tmpfs
16G 0 16G 0% /dev/shm
/dev/sdb1
929G 709G 173G 81% /db2
/dev/sdb2
905G 622G 238G 73% /opt2
192.168.0.121:/nfs7
1.1T 621G 391G 62% /dbbak2
[root@server119
extundelete-0.2.0]# mount -n -r -o remount /db
最好尽快将所在分区修改为只读方式,防止数据被覆盖使用。
[root@server119 /]# cd
root
[root@server119 ~]# ll
-rw-r–r– 1
root root 97851 08-31 12:10 extundelete-0.2.0.tar.bz2
这里上传一个工具主要用于ext3文件系统,ext4没有测试过。
[root@server119 ~]# tar
xjvf extundelete-0.2.0.tar.bz2
extundelete-0.2.0/
extundelete-0.2.0/README
extundelete-0.2.0/acinclude.m4
extundelete-0.2.0/configure.ac
extundelete-0.2.0/aclocal.m4
……
安装extundelete工具
root@server119 ~]# cd
extundelete-0.2.0
[root@server119
extundelete-0.2.0]# ls
acinclude.m4
autogen.sh config.h.in configure.ac install-sh
Makefile.am missing src
aclocal.m4
compile configure
depcomp LICENSE
Makefile.in README
[root@server119
extundelete-0.2.0]# ./configure
Configuring extundelete
0.2.0
Writing generated files
to disk
[root@server119
extundelete-0.2.0]# make
make -s all-recursive
Making all in src
[root@server119
extundelete-0.2.0]# make install
Making install in src
/usr/bin/install
-c ‘extundelete’ ‘/usr/local/bin/extundelete’
使用extundelete进行rm文件或者文件夹的恢复
[root@server119
extundelete-0.2.0]# extundelete /dev/sda2 –restore-all
Loading filesystem
metadata … 2236 groups loaded.
Loading journal
descriptors … 30441 descriptors loaded.
Writing output to
directory RECOVERED_FILES/
此时可以将、dev/sda2分区的被删除但是还没有被重用的block恢复,而如果block已经被重用了,此种方法不行了,而后会在当前目录下创建一个RECOVERD_FILES的目录,目录下就是extundelete恢复的文件或者文件夹(个人尝试恢复文件夹,发现恢复的文件夹存在部分文件丢失,无法恢复,可能是block被重用导致)。
[root@server119
extundelete-0.2.0]# ll RECOVERED_FILES/
总计 16
-rwxr-xr-x 2 root root
21096 08-31 14:53 odu
已经成功恢复
来自 <http://blog.163.com/scott_guo/blog/static/1810260832012913113728302/>
以上方式,仅适用于超级快没有损坏的情况,在suer-block损坏后,用fsck修复会擦掉记录的信息,这会导致extundelete无法扫出任何可恢复的文件,也就是说,如果你恢复时报super-block的错误的话,基本上是找不回来了
有关extdelete恢复测试的更多相关文章
- 使用zfs进行pg的pitr恢复测试
前段时间做了一下zfs做pg的增量恢复测试,mark一下. 服务器信息: 主机:192.168.173.43 备机:192.168.173.41 主备使用流复制搭建,在备机上面进行了zfs快照备份. ...
- RMAN备份介质的移动与再恢复测试 [ catalog start with ‘dir’ ]
--RMAN备份介质的移动与再恢复测试 ---------------------------------------------------------2013/09/21 由于目前生产环境中没 ...
- RMAN基础恢复测试
--RMAN恢复测试实战 RMAN> list backup; using target database control file instead of recovery catalo ...
- 一个简单的binlog恢复测试
日常的数据备份及恢复测试,是DBA工作重中之重的事情,所以要做好备份及测试,日常的备份常见有mysqldump+binlog备份.xtrabackup+binlog备份,无论那一种,几乎都少不了对bi ...
- Mongodb 5节点异地两中心故障转移恢复测试案例
Mongodb5节点异地两中心故障转移恢复测试案例 架构方式:5节点,主中心(2数据1仲裁),备中心(1数据1仲裁) 1基本情况 操作系统:Red Hat Enterprise Linux Serve ...
- Oracle之使用rman进行异机恢复测试记录
本次测试目的是从生产数据库导出rman备份然后在测试数据库恢复 1,拷贝备份至相应目录 2,进入rman rman target \ 3,关闭数据库 shutdown 4,以nomount模式启动数据 ...
- 存在单点故障的namenode宕机恢复测试
前提:如果namenode没有做HA,那么至少应该启用secondarynamenode,以便namenode宕机之后手动恢复数据 实验环境:3个节点(cenos 6.10) 测试前数据: 1.为了确 ...
- oracle异机恢复测试
(一)问题背景 最近在生产环境中,开发人员误操作,使用truncate将oracle数据库某个表的数据全部删除了,在删除之后,开发人员发现自己闯祸了,于是联系值班的DBA进行紧急数据恢复. 经过分析, ...
- RMAN数据库恢复测试
RMAN恢复实践 RMAN> list backup; using target database control file instead of recovery catalog List ...
随机推荐
- php 内置的 webserver 研究。
今天,试了一下通过 php5.4.45 内置的webserver , 在Windows XP 上面能够跑起公司的一个项目,完全无压力.哈哈,只要一个php 就可以,不需要 Apache , Nginx ...
- 关于BOM 的详细介绍
原文地址:http://blog.csdn.net/u011526599/article/details/51419182
- Java Restful框架:Jersey入门示例(官方例子)
本文主要介绍了Java Restful框架Jersey入门例子(来源于官方网站https://jersey.java.net/),废话不多说进入正题. 在Jersey官方示例中(https://jer ...
- boost库之shared_ptr
shared_ptr 编辑 目录 1简介 2作用 3历史 4概要 5用法 ▪ 删除共享对象 ▪ 标准容器 1简介编辑 shared_ptr是一种智能指针(smart pointer). 2作用编辑 s ...
- iOS开发UI篇—ios应用数据存储方式(归档) :转发
本文转发至:文顶顶http://www.cnblogs.com/wendingding/p/3775293.html iOS开发UI篇—ios应用数据存储方式(归档) 一.简单说明 在使用plist ...
- 配置 Gitblit 进行 Git 代码管理
配置 Gitblit 进行 Git 代码管理 环境 CentOS 7 x64 IP: 10.6.0.2 首先需要安装jdk 安装步骤 就略过了 下载最新版本 gitblit wget http:/ ...
- Javascript Fromdata 与jQuery 实现Ajax文件上传
<!DOCTYPE html> <html> <head> <title>ajax</title> <script type=&quo ...
- ubuntu12.04安装tar.gz格式的jdk
注意系统的版本,jdk也有32位和64位的,不然会无效 首先将*.tar.gz压缩包解压 命令: tar -xzvf *.tar.gz 假设得到的文件夹为java 将其移动到/usr/中 命令为:su ...
- C++中string中的erase函数怎么使用
erase函数的原型如下:(1)string& erase ( size_t pos = 0, size_t n = npos );(2)iterator erase ( iterator p ...
- pageX,clientX,screenX,offsetX区别
pageX/pageY:鼠标相对于整个页面的X/Y坐标.注意,整个页面的意思就是你整个网页的全部,比如说网页很宽很长,宽2000px,高3000px,那pageX,pageY的最大值就是它们了.特别说 ...