Mongodb

Mongodump:無法辨識的欄位“快照”

  • April 28, 2021

我正在使用 mongo 工具中的 mongodump 下載我的伺服器的備份。但是,當我執行該命令時,該命令返回“無法辨識的欄位’快照’”。

完整的錯誤是:

Failed: error reading collection: Failed to parse: { find: "data", skip: 0, snapshot: true, $readPreference: { mode: "secondaryPreferred" }, $db: "xxx" }. Unrecognized field 'snapshot'.

Mongodump –version 返回:

mongodump version: built-without-version-string
git version: built-without-git-spec
Go version: go1.7.3
  os: linux
  arch: amd64
  compiler: gc
OpenSSL version: OpenSSL 1.0.2g  1 Mar 2016

我可能需要降級我的版本?否則不確定從這裡去哪裡……

添加--forceTableScan

例子:

mongodump --forceTableScan -d database_name -o target_directory

http://aug2uag.blogspot.com/2018/08/mongoexport-unrecognized-field-snapshot.html


錯誤來自 mongo 4.0 中引入的 mongo 快照功能(https://docs.mongodb.com/manual/reference/read-concern-snapshot/

如果您使用較舊的 mongo 客戶端 (<4.0) 轉儲/導出更新的 MongoDB,您將收到錯誤

無法辨識的欄位“快照”

使用“forceTableScan”將阻止快照功能變為活動狀態,您不會收到錯誤消息

引用自:https://dba.stackexchange.com/questions/215534