標籤:匯入 字型大小 常用 關係 pos dir body 匯出檔案 3.0
一:備份資料庫
G:\Program Files\MongoDB\Server\3.0\bin>mongodump -d mydb -o g:/data/back
mongodump -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -o 檔案存在路徑
如果沒有使用者,可以去掉-u和-p。
如果匯出原生資料庫,可以去掉-h。
如果是預設連接埠,可以去掉--port。
如果想匯出所有資料庫,可以去掉-d。
匯出所有資料庫
命令:mongodump -h 127.0.0.1 -o /home/zhangy/mongodb/
匯出指定資料庫
mongodump -h 192.168.1.108 -d tank -o /home/zhangy/mongodb/
二:mongorestore還原資料庫
1,常用命令格式
mongorestore -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 --drop 檔案存在路徑 --drop的意思是,先刪除所有的記錄,然後恢複。 mongorestore /home/zhangy/mongodb/ #這裡的路徑是所有庫的備份
G:\Program Files\MongoDB\Server\3.0\bin>mongorestore -d mydb1 --dir g:/data/back/mydb
2,恢複所有資料庫到mongodb中
mongorestore /home/zhangy/mongodb/ #這裡的路徑是所有庫的備份
3,還原指定的資料庫
G:\Program Files\MongoDB\Server\3.0\bin>mongorestore -d mydb1 --dir g:/data/back/mydbmongorestore -d tank /home/zhangy/mongodb/tank/ #tank這個資料庫的備份路徑mongorestore -d tank_new /home/zhangy/mongodb/tank/ #將tank還有tank_new資料庫中
三,mongoexport匯出表,或者表中部分欄位
mongoexport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 -f 欄位 -q 條件匯出 --csv -o 檔案名稱
上面的參數好理解,重點說一下:
-f 匯出指欄位,以字型大小分割,-f name,email,age匯出name,email,age這三個欄位
-q 可以根據查詢條件匯出,-q ‘{ "uid" : "100" }‘ 匯出uid為100的資料
--csv 表示匯出的檔案格式為csv的,這個比較有用,因為大部分的關係型資料庫都是支援csv,在這裡有共同點
匯出整張表
mongoexport -d tank -c users -o /home/zhangy/mongodb/tank/users.dat
根據條件匯出資料
mongoexport -d tank -c users -q ‘{uid:{$gt:1}}‘ -o tank/users.json
四,mongoimport匯入表,或者表中部分欄位
還原整表匯出的非csv檔案
mongoimport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --upsert --drop 檔案名稱
重點說一下--upsert,其他參數上面的命令已有提到,--upsert 插入或者更新現有資料
還原部分欄位的匯出檔案
mongoimport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --upsertFields 欄位 --drop 檔案名稱
--upsertFields根--upsert一樣
還原匯出的csv檔案
mongoimport -h IP --port 連接埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --type 類型 --headerline --upsert --drop 檔案名稱
還原匯出的表資料
mongoimport -d tank -c users --upsert tank/users.dat
部分欄位的表資料匯入
mongoimport -d tank -c users --upsertFields uid,name,sex tank/users.dat
還原csv檔案
mongoimport -d tank -c users --type csv --headerline --file tank/users.csv
mongodb的備份還原