MongoDB的備份與恢複

來源:互聯網
上載者:User

標籤:ref   執行個體   在伺服器   匯出   rop   server1   img   store   int   

MongoDB資料備份

在Mongodb中我們使用mongodump命令來備份MongoDB資料。該命令可以匯出所有資料到指定目錄中。

mongodump命令可以通過參數指定匯出的資料量級轉存的伺服器。


文法

mongodump命令指令碼文法如下:

>mongodump -h dbhost -d dbname -o dbdirectory
  • -h:

    MongDB所在伺服器位址,例如:127.0.0.1,當然也可以指定連接埠號碼:127.0.0.1:27017

  • -d:

    需要備份的資料庫執行個體,例如:test

  • -o:

    備份的資料存放位置,例如:c:\data\dump,當然該目錄需要提前建立,在備份完成後,系統自動在dump目錄下建立一個test目錄,這個目錄裡面存放該資料庫執行個體的備份資料。

執行個體

先建立一個庫,並插入內容,已驗證備份效果

> use mydb
switched to db mydb
> db.createCollection('db')                        // 建立一個集合
{ "ok" : 1 }
> show collections                                   // 查看集合
db
mydb

如下進行備份

[[email protected] ~]# mongodump -h 127.0.0.1 -d mydb -o /mnt/          //將mydb庫備份到/mnt/

 

 如下,可見資料已經備份到/mnt/下



mongodump 命令選擇性參數列表如下所示:


[[email protected] ~]# mongodump --collection db -d mydb        // 備份mydb庫中的db集合


文法 描述 執行個體
mongodump --host HOST_NAME --port PORT_NUMBER 該命令將備份所有MongoDB資料 mongodump --host runoob.com --port 27017
mongodump --dbpath DB_PATH --out BACKUP_DIRECTORY
mongodump --dbpath /data/db/ --out /data/backup/
mongodump --collection COLLECTION --db DB_NAME 該命令將備份指定資料庫的集合。 mongodump --collection mycol --db test


MongoDB資料恢複

mongodb使用 mongorestore 命令來恢複備份的資料。

文法

mongorestore命令指令碼文法如下:

>mongorestore -h <hostname><:port> -d dbname <path>
  • --host <:port>, -h <:port>:

    MongoDB所在伺服器位址,預設為: localhost:27017

  • --db , -d :

    需要恢複的資料庫執行個體,例如:test,當然這個名稱也可以和備份時候的不一樣,比如test2

  • --drop:

    恢複的時候,先刪除當前資料,然後恢複備份的資料。就是說,恢複後,備份後添加修改的資料都會被刪除,慎用哦!

  • <path>:

    mongorestore 最後的一個參數,設定備份資料所在位置,例如:c:\data\dump\test。

    你不能同時指定 <path> 和 --dir 選項,--dir也可以設定備份目錄。

  • --dir:

    指定備份的目錄

    你不能同時指定 <path> 和 --dir 選項。


執行個體

[[email protected] ~]# mongorestore -h 127.0.0.1:27017 -d mydbb /mnt/mydb        將/mnt/mydb路徑下的內容恢複到資料庫mydbb



進入mongo去查看

> use mydbb
switched to db mydbb
> show collections
db
mydb

可以看到在mydbb中資料已經恢複過來。



MongoDB的備份與恢複

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.