欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MongoDB使用自帶的命令行工具進行備份和恢復的教程

 更新時間:2016年06月23日 15:29:46   作者:Hunk Shi  
這篇文章主要介紹了MongoDB使用自帶的命令行工具進行備份和恢復的教程,我們只需要在命令行界面中用簡單的命令操作mongorestore和mongodump工具就可以實現(xiàn),需要的朋友可以參考下

要備份一個數(shù)據(jù)庫,

mongorestore -d db /path/to/back_up

例如:

mongodump -d bookstore -o /data01/db_backup/

該命令會dump出該DB所有的collection
從備份文件夾恢復數(shù)據(jù)

mongorestore -d bookstore /data01/db_backup/bookstore

只備份或回復指定的collection
以bookstore DB 中statistics 表為例

mongodump -d bookstore -c statistics -o /data01/db_backup/

然后restore時指定該collection對應(yīng)的bson文件

mongorestore -d bookstore -c statistics /data01/db_backup/bookstore/statistics.bson

通過條件查詢dump
還可以通過一個query來dump中一個collection中符合條件的某些記錄, 例如

mongodump -d bookstore -c novel_sources -q "{\"tag\": \"tag_11\"}" -o /data01/db_backup/

要注意的是如果query中有$符號,需要轉(zhuǎn)義,例如

mongodump -d qunimei -c collection_name -q "{\"date\": {\"\$gte\": \"2015-03-25\"}}" -o /path/to/dump

注意事項
mongorestore并不會覆蓋已有的記錄,而是重復添加(如果可以的話)。
當數(shù)據(jù)量很大的時候,該方法耗時很大。
直接備份數(shù)據(jù)文件

mongo 127.0.0.1:27017/db_to_back --eval "db.fsyncLock()"
rsync -avh --delete /path/to/your/mongofile /path/to/backup/folder/
mongo 127.0.0.1:21001/turbo --eval "db.fsyncUnlock()"

關(guān)鍵是第一行和第三行的兩個命令,對于db.fsyncLock(),mongodb的文檔說明

db.fsyncLock()

Forces the mongod to flush all pending write operations to the disk and locks the entire mongod instance to prevent additional writes until the user releases the lock with the db.fsyncUnlock() command. db.fsyncLock() is an administrative command.
將mongod 未完成的寫操作寫入數(shù)據(jù)文件并阻止新的寫入操作,知道運行db.fsyncUnlock()命令,因此拷貝數(shù)據(jù)文件前后要執(zhí)行這兩個命令。

與其他備份恢復工具的對比

mongodb自帶的備份工具還有bsondump、mongoexport,恢復工具還有mongoimport ,幾者之間的具體區(qū)別是:

bsondump、mongoexport、mongodump備份工具的對比:

1、bsondump可以指定備份的格式為json和debug模式,這個命令雖然附帶,但很少用到 ;

2、mongoexport 可以導出json或csv格式的文件,可以指定查詢過濾器或指定輸出的域,不過此工具導出的json,csv可能對某些數(shù)據(jù)類型不兼容,因此可能不能全部數(shù)據(jù)導出,mongodump就可以全部兼容 ;

3、mongodump支持過濾 ,而且在導出速度和壓縮率方面mongodump是最快最好的 。所以,若無csv或debug等特殊格式的備份需求,一般都使用 mongodump 作為備份工具 。

mongorestore與mongoimport 恢復工具的對比:

1、 mongoimport 可以接受json,csv,tsv格式的文件,每行為一個對象 。同mongoexport一樣,其在恢復過程中同樣存在兼容性的問題,所以有恢復不完整的概率 ;

2、mongorestore,速度較慢,比mongoimport慢2.5倍左右,但是根據(jù)mongodump導出的數(shù)據(jù),可以完整導入數(shù)據(jù)。在restore過程中,索引根據(jù)之前dump的結(jié)果重新創(chuàng)造。

相關(guān)文章

  • MongoDB在不同主機間復制數(shù)據(jù)庫和集合的教程

    MongoDB在不同主機間復制數(shù)據(jù)庫和集合的教程

    MongoDB自帶了clone一族JavaScript函數(shù)來進行數(shù)據(jù)的復制,這里我們總結(jié)了MongoDB在不同主機間復制數(shù)據(jù)庫和集合的教程,列舉出了一些主從復制操作中常用的重要函數(shù):
    2016-07-07
  • 如何去掉保存mongodb數(shù)據(jù)時出現(xiàn)的_class字段

    如何去掉保存mongodb數(shù)據(jù)時出現(xiàn)的_class字段

    這篇文章主要給大家介紹了如何去掉保存mongodb數(shù)據(jù)時出現(xiàn)的_class字段,文中通過代碼示例給大家介紹的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下
    2024-02-02
  • 利用mongodb查詢某坐標是否在規(guī)定多邊形區(qū)域內(nèi)的方法

    利用mongodb查詢某坐標是否在規(guī)定多邊形區(qū)域內(nèi)的方法

    這篇文章主要介紹了利用mongodb如何查詢某坐標是否在固定多邊形區(qū)域內(nèi)的方法,文中給出了詳細示例代碼,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-02-02
  • mongodb+php實現(xiàn)簡單的增刪改查

    mongodb+php實現(xiàn)簡單的增刪改查

    這篇文章主要介紹了mongodb+php實現(xiàn)簡單的增刪改查的相關(guān)資料,需要的朋友可以參考下
    2016-07-07
  • Mongodb 如何將時間戳轉(zhuǎn)換為年月日日期

    Mongodb 如何將時間戳轉(zhuǎn)換為年月日日期

    這篇文章主要介紹了Mongodb 如何將時間戳轉(zhuǎn)換為年月日日期,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • MongoDB快速入門筆記(七)MongoDB的用戶管理操作

    MongoDB快速入門筆記(七)MongoDB的用戶管理操作

    這篇文章主要介紹了MongoDB快速入門筆記(七)MongoDB的用戶管理操作 的相關(guān)資料,需要的朋友可以參考下
    2016-06-06
  • 使用mongodb實現(xiàn)簡單的讀寫操作

    使用mongodb實現(xiàn)簡單的讀寫操作

    這篇文章主要給大家介紹了如何使用mongodb實現(xiàn)簡單的讀寫操作,本文適合初學者,特別是剛剛安裝了mongodb數(shù)據(jù)庫的朋友,或在atlas剛拿到免費集群的朋友,文中有詳細的代碼示例供大家參考,需要的朋友可以參考下
    2023-12-12
  • MongoDB操作類封裝實例代碼

    MongoDB操作類封裝實例代碼

    這篇文章主要給大家介紹了關(guān)于MongoDB操作類封裝的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用MongoDB具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • MongoDB的chunk詳解

    MongoDB的chunk詳解

    這篇文章主要介紹了MongoDB的chunk的相關(guān)資料,幫助大家更好的理解和學習使用MongoDB數(shù)據(jù)庫,感興趣的朋友可以了解下
    2021-04-04
  • MongoDB導出查詢結(jié)果到文件例子

    MongoDB導出查詢結(jié)果到文件例子

    這篇文章主要介紹了MongoDB導出查詢結(jié)果到文件例子,本文直接給出示例代碼,簡潔易懂,需要的朋友可以參考下
    2015-02-02

最新評論