mongodb 備份還原
阿新 • • 發佈:2018-12-21
cd 到本機mongodb的安裝目錄 如:C:\Program Files\MongoDB\Server\3.4\bin
可以發現裡面除了可以啟動mongodb的mongod.exe
還有很多啟動程式
其中mongodump.exe
和mongorestore.exe
就分別是用來資料備份遷移的
mongodump備份資料庫
- 常用命令格
mongodump -h IP --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 -o 檔案存在路徑
如果沒有使用者,可以去掉-u和-p。 如果匯出本機的資料庫,可以去掉-h。 如果是預設埠,可以去掉--port。 如果想匯出所有資料庫,可以去掉-d。 如果不指定-o,檔案備份在當前目錄下
- 匯出所有資料庫
mongodump
- 匯出指定資料庫
mongodump -h 192.168.1.108 -d movie
匯出後會在當前的bin目錄下生成一個dump的資料夾,裡面就是備份的資料打包上傳到伺服器等待恢復
mongorestore還原資料庫
注意事項 mongorestore 並不是在mongo shell裡執行
可以執行檢視命令在哪
[email protected]:~# whereis mongorestore
mongorestore: /usr/bin/mongorestore /usr/share/man/man1/mongorestore.1.gz
然後
cd /usr/bin
- 常用命令格式
mongorestore -h IP --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 --drop 檔案存在路徑
--drop的意思是,先刪除所有的記錄,然後恢復。
- 恢復所有資料庫到mongodb中
[email protected]:# mongorestore /root/dump/myblog/ #這裡的路徑是所有庫的備份路徑
- 還原指定的資料庫
[email protected]:# mongorestore -d movie /root/dump/myblog/movie/ #movie這個資料庫的備份路徑
[email protected] :# mongorestore -d movie_new /root/dump/myblog/movie/ #將movie還有movie_new資料庫中
這二個命令,可以實現資料庫的備份與還原,檔案格式是json和bson的。無法指寫到表備份或者還原。mongoexport
和mongoimport
實現表的匯入匯出。