您好,登錄后才能下訂單哦!
Mongodb導出與導入
1: 導入/導出可以操作的是本地的mongodb服務器,也可以是遠程的.
所以,都有如下通用選項:
-h host 主機
--port port 端口
-u username 用戶名
-p passwd 密碼
2: mongoexport 導出json格式的文件
問: 導出哪個庫,哪張表,哪幾列,哪幾行?
-d 庫名
-c 表名
-f field1,field2...列名
-q 查詢條件
-o 導出的文件名
-- csv 導出csv格式(便于和傳統數據庫交換數據)
例:
[root@localhost mongodb]# ./bin/mongoexport -d test -c news -o test.json
connected to: 127.0.0.1
exported 3 records
[root@localhost mongodb]# ls
bin dump GNU-AGPL-3.0 README test.json THIRD-PARTY-NOTICES
[root@localhost mongodb]# more test.json
{ "_id" : { "$oid" : "51fc59c9fecc28d8316cfc03" }, "title" : "aaaa" }
{ "_id" : { "$oid" : "51fcaa3c5eed52c903a91837" }, "title" : "today is sataday" }
{ "_id" : { "$oid" : "51fcaa445eed52c903a91838" }, "title" : "ok now" }
例2: 只導出goods_id,goods_name列
./bin/mongoexport -d test -c goods -f goods_id,goods_name -o goods.json
例3: 只導出價格低于1000元的行
./bin/mongoexport -d test -c goods -f goods_id,goods_name,shop_price -q ‘{shop_price:{$lt:200}}’ -o goods.json
注: _id列總是導出
Mongoimport 導入
-d 待導入的數據庫
-c 待導入的表(不存在會自己創建)
--type csv/json(默認)
--file 備份文件路徑
例1: 導入json
./bin/mongoimport -d test -c goods --file ./goodsall.json
例2: 導入csv
./bin/mongoimport -d test -c goods --type csv -f goods_id,goods_name --file ./goodsall.csv
./bin/mongoimport -d test -c goods --type csv --headline -f goods_id,goods_name --file ./goodsall.csv (1.需要指定列名。2.--headline跳過第一行)
(第一行是無用的)
mongodump 導出二進制bson結構的數據及其索引信息
-d 庫名
-c 表名
-f field1,field2...列名
例:
mongodum -d test [-c 表名] 默認是導出到mongo下的dump目錄
規律:
1:導出的文件放在以database命名的目錄下
2: 每個表導出2個文件,分別是bson結構的數據文件, json的索引信息
3: 如果不聲明表名, 導出所有的表
mongorestore 導入二進制文件
例:
./bin/mongorestore -d test --directoryperdb dump/test/ (mongodump時的備份目錄)
二進制備份,不僅可以備份數據,還可以備份索引,
備份數據比較小.
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。