備份:mongodump
mongodump --help
#命令幫助
mongodump -h 192.168.0.1 -u "mydbuser" -p "123" -d mydb -o d:\mydb
#備份192.168.0.1上的mydb庫到本地的 d:\mydb 目錄,如果mongod服務啟用了認證,則必須使用用戶名密碼進行誰
#注意此處的認證用戶必須是mydb庫中的用戶,如果admin庫中有超級用戶,但mydb庫沒有用戶,也是無法備份的,必須在mydb中創建一個用戶才行。
mongodump -h 192.168.0.1 -u "mydbuser" -p "123" -d mydb -c User -o d:\User
#備份192.168.0.1上的mydb庫中的User集合
恢復: mongorestore
mongorestore --help
#命令幫助
mongorestore -h 192.168.0.2 -u "root" -p "123" d:\mydb
#從備份目錄d:\mydb下恢復數據庫到192.168.0.1上
#整庫恢復使用admin庫下的用戶進行認證
mongorestore -h 192.168.0.2 -u "mydb_user" -p "123" -d mydb d:\User\mydb --drop
#從備份目錄d:\User\mydb下恢復集合到192.168.0.1上mydb庫的User集合,如果存在則先刪除再恢復
#指定數據庫名則需使用指定庫下的用戶進行認證
導入導出
另外mongodb還提供了mongoexport 和 mongoimport 這兩個命令來導出或導入數據,也可以實現備份和恢復的功能。
例:
mongoexport -h 10.0.19.72 -u test_user -p 123 -d test -c User -o d:\test\user.json
mongoexport -h 10.0.19.72 -u test_user -p 123 -d test -c User -q {"_id":"1"} -o d:\test\user2.json
mongoimport -h 10.0.19.72 -u test_user -p 123 -d test -c User2 --file d:\test\user.json