mongo的資料匯入匯出

2021-07-23 12:28:43 字數 2653 閱讀 9298

專案整理 mongo遠端匯入匯出資料(

一: 匯出所有資料庫

格式: mongodump -h ip --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 -o 檔案存在路徑

如果沒有使用者誰,可以去掉-u和-p。

如果匯出本機的資料庫,可以去掉-h。

如果是預設埠,可以去掉--port。

如果想匯出所有資料庫,可以去掉-d。

匯出所有資料庫:mongodump -h 127.0.0.1 -o /home/user/mongodb/

匯出指定資料庫:mongodump -h 192.168.1.108 -d tank -o /home/zhangy/mongodb/

4 還原資料庫

格式:mongorestore -h ip --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 --drop 檔案存在路徑

--drop的意思是,先刪除所有的記錄,然後恢復。

還原所有資料庫:mongorestore /home/zhangy/mongodb/

還原指定資料庫:mongorestore -d tank /home/zhangy/mongodb/tank/  #tank這個資料庫的備份路徑

另外一例:mongorestore -d tank_new /home/zhangy/mongodb/tank/  #將tank還有tank_new資料庫中

二:對於資料表的操作

匯出格式:mongoexport -h ip --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 -f 字段 -q 條件匯出 --type=csv -o 檔名

例如:注意csv格式必須加-f的字段

mongoexport --host 192.168.161.246 -d augmarketing_stage -u aug -p abc123_ -c scorehistory -q "" -f "brief,increment,reason,description,createdat" --type=csv --out /tmp/scorehistory_578f1323fa2f946b378b56d9.csv

匯出json

mongoexport  -d wm -c scorehistory  -q "}" --type=json -o /home/user/public/scorehistory.json

-f    匯出指欄位,以字型大小分割,-f name,email,age匯出name,email,age這三個字段

-q    可以根查詢條件匯出,-q '' 匯出uid為100的資料

--csv 表示匯出的檔案格式為csv的,這個比較有用,因為大部分的關係型資料庫都是支援csv,在這裡有共同點

匯出整張表:mongoexport -d tank -c users -o /home/zhangy/mongodb/tank/users.dat

匯出表中部分字段:mongoexport -d tank -c users --csv -f uid,name,*** -o tank/users.csv

根據條件匯出資料:mongoexport -d tank -c users -q '}' -o tank/users.json

匯入格式:

1.1,還原整表匯出的非csv檔案

mongoimport -h ip --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --upsert --drop 檔名

重點說一下--upsert,其他引數上面的命令已有提到,--upsert 插入或者更新現有資料

1.2,還原部分欄位的匯出檔案

mongoimport -h ip --port 埠 -u 使用者名稱 -p 密碼 -d 資料庫 -c 表名 --upsertfields 字段 --drop 檔名

--upsertfields根--upsert一樣

1.3,還原匯出的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,***  tank/users.dat  

還原csv檔案:mongoimport -d tank -c users --type csv --headerline --file tank/users.csv

mongo 192.168.161.246:27017/***x_stage -u aug -p abc123_

1. 從遠端資料庫拉取資料到本地json檔案

mongoexport --host 192.168.161.246 --port 27017 --username *** --password abc123 --collection member --db ***x_stage -q "" --out /home/user/public/member.json

2. 將本地json檔案匯入到本地資料庫

mongoimport -d wm -c member --file ~/member.json --type json

mongo匯入匯出

mongodb的bin目錄下提供了乙個mongoexport.exe的程式,可以用於匯出資料。使用 mongoexport help 可以檢視相關引數的說明 mongoexport help export mongodb data to csv,tsv or json files.options h...

匯入匯出備份mongo資料

1,匯入資料 1.1 首先要進入mongo的bin目錄下才能執行匯入匯出命令 cd home data wqs mongodb bin 如果不知道伺服器的mongodb的bin目錄 可以通過find name mongo 查詢mongo所有目錄就可以知道 1.2 進入bin目錄之後 執行 mongo...

mongo 表匯出匯入

匯出 mongoexport h dbhost d dbname c collectionname f collectionkey o dbdirectory h mongodb所在伺服器位址 d 需要恢復的資料庫例項 c 需要恢復的集合 f 需要匯出的字段 省略為所有字段 o 表示匯出的檔名 匯入...