DBAtlas · データベース運用アトラス

67 CannotCreateIndex: Cannot create index(インデックスを作成できない)

MongoDB

意味

制約または上限によりインデックスの構築が失敗した。既存のデータまたは構成のため、MongoDB は要求されたインデックスを構築できなかった。

原因

コレクションあたりの最大インデックス数 (64) の超過、大きすぎるキー、または互換性のないオプションの組合せ (例: TTL インデックスに不適切なフィールド型)。注: 既存データに重複がある状態で一意インデックスを構築すると、このコードではなく E11000 DuplicateKey が発生する。

対処方法

インデックス数の上限に達した場合は、未使用のインデックスを削除する ($indexStats で使用状況を分析)。キーのサイズ/型の互換性とオプションの組合せを確認する。大きなコレクションでは低負荷時にインデックスを構築する (4.2 以降、インデックス構築は書き込みを長時間ブロックしない。background オプションは無視される)。

DBAtlas で開く →

同じデータベースの他の項目