特定のビジネス要件により、MongoDB の上限付きコレクションにデータを保存していましたが、完全な要件が変更されたため、そのコレクション内のすべてのレコードを保存したくありません。
「convertToCapped」コマンドは見つかりましたが、その逆の操作を実行するコマンドは見つかりませんでした。
キャップなしのコレクションに戻すにはどうすればよいですか?
特定のビジネス要件により、MongoDB の上限付きコレクションにデータを保存していましたが、完全な要件が変更されたため、そのコレクション内のすべてのレコードを保存したくありません。
「convertToCapped」コマンドは見つかりましたが、その逆の操作を実行するコマンドは見つかりませんでした。
キャップなしのコレクションに戻すにはどうすればよいですか?
コピーできます:
use admin
db.runCommand( { renameCollection: "yourdb.yourcollection", to: "yourdb.oldcapped" } )
use yourdb
db.oldcapped.copyTo("yourcollection")
次に、必要なインデックスを確保し、uncapped でユーザーを作成しyourcollection
ます。テストを実行し、結果に満足する場合はドロップ oldcapped
します。
言うまでもなく、メンテナンス ウィンドウ内で実行する必要があります。