mongodb数据迁移2种方式比较
生活随笔
收集整理的這篇文章主要介紹了
mongodb数据迁移2种方式比较
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
環境說明:bbs數據采集的數據越來越多,目前是50G,每天大概以200W的數據量增長。而當前服務器1.2上面的空間不足,需要把數據遷移到空間足夠大的1.3上面去
嘗試了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種方式會比較好(已經有不少例子因為碎片帶來嚴重的后果)
嘗試了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種方式會比較好(已經有不少例子因為碎片帶來嚴重的后果)
轉載于:https://blog.51cto.com/lynnteng0/800724
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的mongodb数据迁移2种方式比较的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android深入浅出系列之Androi
- 下一篇: virtual function的一些心