环境说明:bbs数据采集的数据越来越多,目前是50G,每天大概以200W的数据量增长。而当前服务器1.2上面的空间不足,需要把数据迁移到空间足够大的1.3上面去
尝试了2种方式对数据进行迁移,一种是rsync,直接拉取数据;另一种是使用mongodump/mongorestore
尝试了2种方式对数据进行迁移,一种是rsync,直接拉取数据;另一种是使用mongodump/mongorestore
1.rsync
操作步骤:
1.2:
[mongodb]
path = /data1/mongodb/data
hosts allow = 192.168.1.0/24
read only = no
write only = no
1.3:
rsync -avz root@192.168.1.2::mongodb/dbname /data/mongodb-linux-x86_64-1.8.1/data/
chown -R mongodb:mongodb /data/mongodb-linux-x86_64-1.8.1/data/
使用时间:50分钟
到目标服务器数据:50G
优点:使用时间短
缺点:需要配置rsync,数据占用的空间大(数据原封不动的拉取过来,包括碎片)
2.mongodump/mongorestore
操作步骤:
mongodump:
/data/PRG/mongodb/bin/mongodump --host 192.168.1.2:27017 -d dbname -uuername -ppasswd -o /data/mongodb-linux-x86_64-1.8.1/data/ --directoryperdb
mongorestore:
/data/mongodb-linux-x86_64-1.8.1/bin/mongorestore --dbpath /data/mongodb-linux-x86_64-1.8.1/data/ --directoryperdb /data/dbname/
chown -R mongodb:mongodb /data/mongodb-linux-x86_64-1.8.1/data/
使用时间:35(mongodump)+90(mongorestore)
到目标服务器数据:20G(需要的空间大大减小,拉取过程中相当于做了一次碎片整理)
优点:迁移到新服务器的数据经过了整理,需要空间大大减小
缺点:需要时间长
数据迁移时需要停mongo进行操作,而2种方式各有优缺点,如果可以忽略操作时间内的数据的话,那么使用第2种方式会比较好(已经有不少例子因为碎片带来严重的后果)
转自 http://lynnteng0.blog.51cto.com/2145094/800724
相关推荐
基于mongodb oplog的集群复制工具,可以满足迁移和同步的需求,进一步实现灾备和多活功能。MongoDB数据迁移,实时同步,实现灾备和多活的必备工具
MongoDB自动迁移脚本
支持导出,导入,压缩打包,解压
针对上述方案和算法,结合典型开源RDBMS-MySQL实例,对上述关系有向图模型的生成、基于有向图模型的转换算法以及数据迁移算法应用进行验证,实验结果表明RDBMS可以按照一定的数据结构平滑地迁移到MongoDB中。
由于 MongoDB 的主从复制功能不支持高可用,所以从 3.2 版本开始已经被废弃了,转而用副本集来代替实现数据复制的功能。一个副本集总会有一个活跃节点(Primary)和若干个备份节点(Secondary),还有一个可选的一个...
gridfs2s3 - 将 MongoDB GridFS 文件迁移到 AWS S3 的工具 这是一个简单的工具,它将抓取您指向的 GridFS 中的所有文件,并将它们粘贴到 S3 中 安装 go install github.com/Bowbaq/gridfs2s3 用法 gridfs2s3 -h flag...
由于mongodb在大多数情况下都是无模式的,因此您无需进行数据迁移就可以做到。 有时,您想创建一些新实体或迁移旧数据,而不是在代码中添加另一个IF语句。 这是pymongo-migrate出现的地方。用法 Usage: pymongo-...
mongodb的数据迁移到mysql数据库中脚本, 在迁移前需要将mysql的表创建完成,他只负责数据同步
RDBMS到MongoDB迁移白皮书 -涵盖了将数据从RDBMS移至MongoDB时的最佳实践和注意事项 ... -这提供了MongoDB和RDBMS的比较数据表示 完整的数据建模方法 -此演示文稿将指导您完成MongoDB支持的多种数据模型
Cikilop v.1.1是用于MongoDB的简单易用的数据迁移工具,鼓励您使用Python编写迁移脚本。 您只需要docker(或python 3.6)即可。 为什么要使用该工具? 您需要通过在CI管道中进行提交来管理迁移提交。 一个提交可以...
MongoDB是一个很棒的NoSQL和无模式数据库,但是如果数据库中已经有数据并且您更改了数据模式,则需要一个迁移工具来更新现有数据。 如何安装 使用pip $ pip install mongodb-migrations 从源代码 $ python setup....
MySQL到MongoDb 我开始学习mongodb时就做了这个工具,但找不到任何合适的替代方法。 该工具按预期工作,甚至在使用mysql的实时工作应用程序上进行了测试,但是我强烈建议您在使用此软件包时要格外注意。安装composer...
底层MongoDB模式和数据迁移库 :warning: 弃用通知由于未达到我的期望,该项目已于2020年8月终止。 随时提出请求,以保持项目的最新状态并进行维护。 更新已被禁用,依赖项将不再更新。 仅安全补丁程序将发布到npm。...
2. 安装mongo4.0.6 自行查询相关安装配置,可参考:图文详解Linux系统安装MongoDB4.0过程 3. 数据备份恢复 数据备份: (1)整库备份:mongodump -h {ip} –port 27017 -d {testdb} -o /data/temp 说明:-h 后为...
还在发展中!! 如何安装 pip install mysql2mongodb 它是什么 ? 该工具用于将您的mysql数据库迁移到闪亮的新mongoDB数据库!
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。本文给大家介绍Python中MySQL数据迁移到MongoDB脚本的方法,需要的朋友参考下
将sqlite3数据库迁移到mongodb。 为什么? 使用sqlite3 ID避免上传重复项 在一个命令中将所有表复制到mongo集合中 什么 它将所有表从sqlite3复制到指定数据库下的mongo集合中。 例如,如果您有一个带表: table1和...
Mongodb-Migrate 并发迁移脚本Go语言开发的并发mongodb迁移脚本,提供基本功能,代码150行,无学习成本,可Swift根据需求修改拿走.用法:go run main.go截图:=====================================================...
从Oracle数据库迁移到MongoDB数据集。本人用Java写。