用wt文件恢复mongodb
安装 wt
工具
wget http://source.wiredtiger.com/releases/wiredtiger-3.0.0.tar.bz2tar xvf wiredtiger-3.0.0.tar.bz2cd wiredtiger-3.0.0sudo yum install snappy-devel -y./configure --enable-snappymake
修复 wt
文件
将要修复的mongo的 存储目录整个复制一份到 data ,这里比如我要恢复 collection-242-696896999396352821.wt 文件 ,命令如下
./wt -v -h ../data -C "extensions=[./ext/compressors/snappy/.libs/libwiredtiger_snappy.so]" -R dump -f ../collection.dump collection-242-696896999396352821.wtoutput:collection-242-696896999396352821.wt 3507261
修复好的数据在 …/collection.dump 中,需要导出,注意这里的文件没有 wt 后缀
./wt -v -h ../data -C "extensions=[./ext/compressors/snappy/.libs/libwiredtiger_snappy.so]" -R dump -f ../collection.dump collection-242-696896999396352821
数据恢复
- 新建一个库
use testdbdb.back.insert({test: 1})db.back.remove({})db.back.stats()collection-15–558436840631144017
# 找到 back 集合 的文件是 collection-15–558436840631144017
将新mongo服务关闭,不然会占用 collection-15–558436840631144017.wt
将之前的 collection.dump load 到 testdb 的 collection-15–558436840631144017 ,注意这里的 …/…/data/mongodb/data 是新库的存储地址
./wt -v -h ../../data/mongodb/data -C "extensions=[./ext/compressors/snappy/.libs/libwiredtiger_snappy.so]" -R load -f ../collection.dump -r collection-15–558436840631144017输出如下:
collection-15–558436840631144017 :3507261
- 再去新mongo 查看
db.back.count()
0db.repairDatabase()再去新mongo 查看 db.back.count()
3507261
完成恢复
用wt文件恢复mongodb相关推荐
- 使用WT工具恢复MongoDB数据
众所周知MongoDB的底层存储是由WiredTiger负责的,其数据文件也是.wt格式.既然如此,我们就有可能不通过MongoDB服务,而是直接用wt工具从数据文件中恢复数据.虽然我们通常推荐生产环 ...
- mongodump 失败且导致mongo服务挂掉【本质原因,wt文件损坏】
====================================================== 标题遇到的问题是我要解决的问题的中间环节. 原本问题是:需要在之前standlone的Mo ...
- 使用Wiredtiger恢复MongoDB中collection-x-xxx.wt文件数据
目录 问题: 1. 环境准备 1.1 安装MongoDB 1.2 安装Wiredtiger 1.3 文件打包 2. 恢复数据 1.『打捞』出可以被恢复的部分 2. 做些必要的数据格式调整 2.1 wt ...
- mongodb数据库恢复 mongo数据库无法启动恢复 mongodb数据库断电数据恢复
mongodb数据库恢复 mongo数据库无法启动恢复 mongodb数据库断电数据恢复 数据类型 mongodb 3.x 数据容量 140 GB 故障类型 服务器断电导致WiredTiger.wt文 ...
- 【Mongo】.wt文件数据恢复
目录 环境准备 安装Mongo 安装Wiredtiger 文件打包 恢复 使用Wiredtiger恢复.每一个collection-*.wt文件都是一个记录. 该方法恢复数据需要Mongo版本大于&g ...
- 【转】文件恢复神器extundelete
参考博文: 1.Linux中VMware虚拟机增加磁盘空间的扩容操作 http://www.net130.com/CMS/Pub/special/special_virtual/special_vir ...
- Sql Server实用操作-无数据库日志文件恢复数据库两种方法
数据库日志文件的误删或别的原因引起数据库日志的损坏 方法一 1.新建一个同名的数据库 2.再停掉sql server(注意不要分离数据库) 3.用原数据库的数据文件覆盖掉这个新建的数据库 4.再重启s ...
- mysql 二进制日志 解析c++_mysql二进制日志文件恢复数据库
二进制日志的文件的作用 mysql二进制日志文件用来记录所有用户对数据库操作,即记录用户对数据库操作的sql语句.如果有此文件,当数据库发生意外时,可以通过此文件查看到用户在此文件记录的时间段内用户所 ...
- linux恢复设置文件夹,将.bashrc文件恢复到Ubuntu中的默认设置
以下介绍在Ubuntu系统中将.bashrc文件恢复默认设置的方法,如果你在Ubuntu系统中把.bashrc文件搞坏了就按下面的方法恢复bashrc文件. 背景 我有一个Ubuntu VM,我经常用 ...
最新文章
- RNN,LSTM,GRU基本原理的个人理解重点
- mysql根据两列去重复_mysql对两列去重复数据库
- 数据结构——线性结构
- 模型参数优化(三):模拟退火
- ITK:两幅图像之差的绝对值
- 在 VMware Clone Ubuntu Server 之后,解决网卡问题
- java登录界面命令_Java命令行界面(第18部分):JCLAP
- 漫步最优化二十九——D.S.C.算法
- tomcat修改端口号后无法访问
- php5市场占有率,javascript,php_目前国内浏览器的市场占有率?,javascript,php,html,html5,css - phpStudy...
- 编程c语言黑与白,C语言黑与白问题代码及解析
- 没有人能够一味地淡定,没有人能够一味地忍受
- 在PYNQ-Z2上移植RISC-V
- python_selenium项目_批量获取企业信用代码
- Frechet Inception Distance (FID)
- 应届毕业生,让人欢喜让人忧
- Ubuntu 22 安装go-ethereum
- Geoserver基础配图研究
- 魔众文库系统 v2.5.0 批量上传,支持腾讯万象文档,重复检测
- python开发工具有哪些?我推荐这5款python开发工具!