MongoDB之整庫備份還原單表collection備份還原

來源:互聯網
上載者:User

標籤:mongodb   整庫備份   整庫還原   collection備份   

MongoDB之整庫備份還原單表collection備份還原

cd D:\MongoDB\bin

 

1整庫備份:

mongodump -h dbhost -d dbname -o dbdirectory

-h:MongDB所在伺服器位址,例如:127.0.0.1:27017

-d:需要備份的資料庫執行個體,例如:wlwdb

-o:備份的資料存放位置,例如:D:\MongoDB\data\dump,當然該目錄需要提前建立,在備份完成後,系統自動在dump目錄下建立一個wlwdb目錄,這個目錄裡面存放該資料庫執行個體的備份資料。

eg:

mongodump -h 127.0.0.1 -d wlwdb -o D:\MongoDB\data\dump


可以查看該備份目錄:


mongodump --help


mongodump的官方說明:options: --help          produce help message -v [ --verbose ]     be more verbose (include multiple times for more              verbosity e.g. -vvvvv) --version        print the program‘s version and exit -h [ --host ] arg    mongo host to connect to ( /s1,s2 for              sets) --port arg        server port. Can also use --host hostname:port --ipv6          enable IPv6 support (disabled by default) -u [ --username ] arg  username -p [ --password ] arg  password --dbpath arg       directly access mongod database files in the given              path, instead of connecting to a mongod server -              needs to lock the data directory, so cannot be used              if a mongod is currently accessing the same path --directoryperdb     if dbpath specified, each db is in a separate              directory --journal        enable journaling -d [ --db ] arg     database to use -c [ --collection ] arg collection to use (some commands) -o [ --out ] arg (=dump) output directory or "-" for stdout -q [ --query ] arg    json query --oplog         Use oplog for point-in-time snapshotting --repair         try to recover a crashed database --forceTableScan     force a table scan (do not use $snapshot)

2整庫恢複:

mongorestore -h dbhost -d dbname –directoryperdb dbdirectory

-h:MongoDB所在伺服器位址

-d:需要恢複的資料庫執行個體,例如:wlwdb(可以和備份時候的不一樣)

–directoryperdb:備份資料所在位置,例如:D:\MongoDB\data\dump\wlwdb

–drop:恢複的時候,先刪除當前資料,然後恢複備份的資料。

eg:

mongorestore -h 127.0.0.1 -d wlwdb –directoryperdb D:\MongoDB\data\dump\wlwdb

 

mongorestore的官方說明(可通過mongorestore --help查看):options: --help         produce help message -v [ --verbose ]    be more verbose (include multiple times for more             verbosity e.g. -vvvvv) --version        print the program‘s version and exit -h [ --host ] arg    mongo host to connect to ( /s1,s2 for sets) --port arg       server port. Can also use --host hostname:port --ipv6         enable IPv6 support (disabled by default) -u [ --username ] arg  username -p [ --password ] arg  password --dbpath arg      directly access mongod database files in the given             path, instead of connecting to a mongod server -             needs to lock the data directory, so cannot be used             if a mongod is currently accessing the same path --directoryperdb    if dbpath specified, each db is in a separate             directory --journal        enable journaling -d [ --db ] arg     database to use -c [ --collection ] arg collection to use (some commands) --objcheck       validate object before inserting --filter arg      filter to apply before inserting --drop         drop each collection before import --oplogReplay      replay oplog for point-in-time restore --oplogLimit arg    exclude oplog entries newer than provided timestamp             (epoch[:ordinal]) --keepIndexVersion   don‘t upgrade indexes to newest version --noOptionsRestore   don‘t restore collection options --noIndexRestore    don‘t restore indexes --w arg (=1)      minimum number of replicas per write

3單個collection備份:

mongoexport -h dbhost -d dbname -c collectionname -f collectionKey -o dbdirectory

-h: MongoDB所在伺服器位址

-d: 需要恢複的資料庫執行個體

-c: 需要恢複的集合

-f: 需要匯出的欄位(省略為所有欄位)

-o: 表示匯出的檔案名稱

 

mongoexport的官方說明(可通過mongoexport --help查看): --help          produce help message -v [ --verbose ]     be more verbose (include multiple times for more              verbosity e.g. -vvvvv) --version         print the program‘s version and exit -h [ --host ] arg     mongo host to connect to ( /s1,s2 for              sets) --port arg        server port. Can also use --host hostname:port --ipv6          enable IPv6 support (disabled by default) -u [ --username ] arg   username -p [ --password ] arg   password --dbpath arg       directly access mongod database files in the given              path, instead of connecting to a mongod server -              needs to lock the data directory, so cannot be used              if a mongod is currently accessing the same path --directoryperdb     if dbpath specified, each db is in a separate              directory --journal         enable journaling -d [ --db ] arg      database to use -c [ --collection ] arg  collection to use (some commands) -f [ --fields ] arg    comma separated list of field names e.g. -f              name,age --fieldFile arg      file with fields names - 1 per line -q [ --query ] arg    query filter, as a JSON string --csv           export to csv instead of json -o [ --out ] arg     output file; if not specified, stdout is used --jsonArray        output to a json array rather than one object per              line -k [ --slaveOk ] arg (=1) use secondaries for export if available, default              true --forceTableScan     force a table scan (do not use $snapshot)

4單個collection恢複:

mongoimport -d dbhost -c collectionname –type csv –headerline –file

-type: 指明要匯入的檔案格式

-headerline: 批明不匯入第一行,因為第一行是列名

-file: 指明要匯入的檔案路徑


mongoimport的官方說明(可通過mongoimport --help查看): --help         produce help message -v [ --verbose ]    be more verbose (include multiple times for more             verbosity e.g. -vvvvv) --version        print the program‘s version and exit -h [ --host ] arg    mongo host to connect to ( /s1,s2 for sets) --port arg       server port. Can also use --host hostname:port --ipv6         enable IPv6 support (disabled by default) -u [ --username ] arg  username -p [ --password ] arg  password --dbpath arg      directly access mongod database files in the given             path, instead of connecting to a mongod server -             needs to lock the data directory, so cannot be used             if a mongod is currently accessing the same path --directoryperdb    if dbpath specified, each db is in a separate             directory --journal        enable journaling -d [ --db ] arg     database to use -c [ --collection ] arg collection to use (some commands) -f [ --fields ] arg   comma separated list of field names e.g. -f name,age --fieldFile arg     file with fields names - 1 per line --ignoreBlanks     if given, empty fields in csv and tsv will be ignored --type arg       type of file to import. default: json (json,csv,tsv) --file arg       file to import from; if not specified stdin is used --drop         drop collection first --headerline      CSV,TSV only - use first line as headers --upsert        insert or update objects that already exist --upsertFields arg   comma-separated fields for the query part of the             upsert. You should make sure this is indexed --stopOnError      stop importing at first error rather than continuing --jsonArray       load a json array, not one item per line. Currently             limited to 16MB.


MongoDB之整庫備份還原單表collection備份還原

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.