私はこの質問の場合と同じ問題があります。私の場合はモンゴ3.4にモンゴ3.2から余分なキーとインデックスの移行
MongoDB dump from 3.2, restore with 3.4, error index save = null
を、手でインデックスを再作成することはオプションではありません、私はスクリプトが必要後で私の運用環境を移行するためにこれを自動化します。私がこれまで試してみました何
:
1 /新しいデータベース上のmongoシェルでこれを実行している:失敗
for (var collection in ["_tempstore", "contracts", "images", "thumbs", "covers", "invoices"]) {
db.getCollection("cfs_gridfs." + collection + ".files").createIndex({filename: 1});
db.getCollection("cfs_gridfs." + collection + ".chunks").createIndex({files_id: 1, n: 1});
}
を。
2 /実行することによって、私の古いデータベース上の私のインデックス内の問題の根本である余分なw
キー退治:また失敗し
db.system.indexes.update({w: {$exists: true}}, {$unset: {w: ""}})
を。
進める正しい方法は何ですか?