數據庫備份 – mongodump
備份本地所有MongoDB數據庫:
復制代碼 代碼如下:
# mongodump -h 127.0.0.1 --port 27017 -o /root/db/alldb
備份遠程指定數據庫:
復制代碼 代碼如下:
# mongodump -h 192.168.1.233 --port 27018 -d yourdb -o /root/db/yourdb
更多mongodump詳解
數據庫還原-mongorestore
恢復所有數據庫到MongoDB中:
復制代碼 代碼如下:
# mongorestore -h 127.0.0.1 --port 27018 /root/db/alldb
還原指定數據庫:
復制代碼 代碼如下:
# mongorestore --port 27017 -d yourdb /root/db/yourdb
更多mongorestore詳解
導出集合數據-mongoexport
導出數據庫中指定集合的數據:
復制代碼 代碼如下:
# mongoexport -h 192.168.1.233 --port 27018 -d yourdb -c yourcoll -o /root/yourcoll.json
導出集合中指定字段的數據,導出的文件格式為csv:
復制代碼 代碼如下:
# mongoexport -d yourdb -c test -f "id,name,score" --csv -o /root/test.csv
根據條件導出數據:
復制代碼 代碼如下:
# mongoexport -d yourdb -c yourcoll -q '{score:{$gt:80}}' -o /root/yourcoll-bk.json
更多mongoexport詳解
集合數據導入-mongoimport
還原導出的集合數據:
復制代碼 代碼如下:
# mongoimport -d yourdb -c yourcoll --file /root/yourcoll.json
導入集合數據,插入或更新現有的數據:
復制代碼 代碼如下:
# mongoimport -d test -c yourcoll --file /root/yourcoll.json --upsert
更多mongoimport詳解
MongoDB數據庫克隆
命令格式:
復制代碼 代碼如下:
db.copyDatabase(fromdb, todb, fromhost, username, password)
從遠程MongoDB中復制指定數據庫到本地:
復制代碼 代碼如下:
# mongo
> db.copyDatabase("yii2", "lyii2", "192.168.0.69")
更多db.copyDatabase詳解
集合的克隆
命令格式:
復制代碼 代碼如下:
db.runCommand({ cloneCollection: "<namespace>", from: "<hostname>", query: { <query> } });
從遠程MongoDB中克隆指定的集合到本地數據庫中:
復制代碼 代碼如下:
# mongo
> db.runCommand({ cloneCollection: "test.user", from: "192.168.0.69", query:{} })
更多cloneCollection詳解