ApsaraDB for MongoDB インスタンスを管理する際に、予期しないエラーが発生すると、重大な操作が停止する可能性があります。根本原因は、不正なホワイトリストエントリや接続文字列などの単純な設定ミスから、ゾーン内のリソース制限、API のレート制限、高可用性フェールオーバーイベントなど、マネージド環境に固有のより複雑な問題まで多岐にわたります。このガイドでは、一般的なエラーメッセージとその原因を示し、問題を迅速に解決し、ダウンタイムを最小限に抑え、データベースの安定性を確保するための実用的なソリューションを提供します。
エラーメッセージ | 原因と解決策 |
指定されたパラメーター AccountDescription が無効です。 | バックアップデータを新しいインスタンスに復元する際は、インスタンス名が指定された制限を満たしていることを確認してください。 |
シャードの合計数が範囲外です。 | シャードクラスターインスタンスから新しいインスタンスにデータを復元する際は、新しいインスタンスのシャード数がソースインスタンスと同じであることを確認してください。 |
dbinstance ストレージのスペックダウンはサポートされていません。 | ApsaraDB for MongoDB は、インスタンスのストレージ容量の削減をサポートしていません。ストレージ容量を削減するには、新しいインスタンスを作成してソースインスタンスを置き換えます。詳細については、「その他の設定変更シナリオと方法」をご参照ください。 |
クラシックネットワークはサポートされなくなりました。VPC の使用を推奨します。 | クラシックネットワーク内の ApsaraDB for MongoDB インスタンスでは、更新、インスタンスタイプの変更、課金方法の変更はできなくなりました。詳細については、「[通知] クラシックネットワーク上の ApsaraDB for MongoDB インスタンスの EOL」をご参照ください。 |
リクエストされた操作のためのリソースが不足しています。 | このエラーは、インスタンスが存在するゾーンにスペックアップのためのリソースが不足しているために発生します。インスタンスを別の仕様に変更するか、チケットを送信してテクニカルサポートに支援を依頼してください。 |
ソースデータベースの oplog が有効になっていません。 | このエラーは、データ移行タスクの設定に失敗した場合に発生します。インスタンスのアーキテクチャを確認してください。スタンドアロンインスタンスには oplog がないため、Data Transmission Service (DTS) による増分移行をサポートしていません。代わりに完全移行を設定してください。 |
リクエストが不正なコンポーネントを参照しています。カスタマーサポートにお問い合わせください。 | このエラーは、リソースの可用性がゾーンによって異なるため、インスタンスの購入中に発生する可能性があります。ゾーンまたはインスタンスタイプを変更するか、チケットを送信してテクニカルサポートに支援を依頼してください。 |
API のレート制限によりリクエストが拒否されました。 | API アクセスを管理および制御するために、Alibaba Cloud は API 呼び出しの頻度を制限しています。[クォータセンター] でクォータを表示し、クォータの引き上げをリクエストしてください。 |
データベースに対する読み取り権限が不足しています。 | DTS を使用してデータを移行する場合、ソースデータベースとターゲットデータベースのデータベースアカウントに必要な権限が必要です。権限を付与する方法は次のとおりです: |
指定された復元時間が無効です。 | API を呼び出してインスタンスを復元する際は、復元時間が有効であることを確認してください。時間は yyyy-MM-ddTHH:mm:ssZ 形式で、UTC で指定する必要があります。たとえば、北京時間 (UTC+8) の `2024-11-08 20:00:00` を UTC に変換するには、8 時間を引きます。結果は `2024-11-08T12:00:00Z` になります。 |
SASL 認証ステップでサーバーがエラーを返しました: BSON フィールド 'saslContinue.mechanism' は不明なフィールドです。 | バージョン間でインスタンスを復元する場合、認証メカニズムが異なると認証が失敗します。MongoDB 4.0 のデフォルトの認証メカニズムは SCRAM-SHA-1 です。MongoDB 5.0 以降のデフォルトは SCRAM-SHA-256 です。バージョン間でインスタンスを復元する場合は、バージョン 4.0 などの古いバージョンの mongorestore ツールを使用してください。 |
TypeError: db.xxx.find は関数ではありません。 | コレクション名が予約キーワードである可能性があります。クエリを実行するには |
createUser が失敗しました: コマンドがエラー xx (Unauthorized) で失敗しました: 'admin でコマンド xxx を実行する権限がありません。 | Alibaba Cloud アカウントには制限された権限があり、admin システムデータベースへの書き込み権限を付与することはできません。これは、admin データベースへのデータ書き込みによって引き起こされる可能性のあるパフォーマンスのジッターを防ぐためです。詳細については、「インスタンス作成時に指定されたルートアカウントの権限」をご参照ください。 |
指定されたネットワークタイプが一致しません。 | クラシックネットワークのセキュリティグループがすでにインスタンスに追加されている場合、VPC セキュリティグループを追加することはできません。 |
インスタンスのマイナーバージョンはこの API ではサポートされていません。 | インスタンスのマイナーバージョンが古すぎます。データベースのマイナーバージョンをアップグレードしてください。 |
インスタンスは完全サポート終了 (EOFS) 段階にあります。 | インスタンスのバージョンは完全サポート終了 (EOFS) 段階にあり、更新できません。データベースのメジャーバージョンをアップグレードしてください。 |
リソースが利用できません。 | このエラーは、インスタンスの作成、スペックアップ、またはスペックダウン時にリソースの問題が発生したことを示します。リクエスト ID を取得し、チケットを送信してテクニカルサポートに支援を依頼することをお勧めします。 |
接続とネットワークのエラー
エラーメッセージ | 原因と解決策 |
|
|
| ApsaraDB for MongoDB インスタンスへの接続数が上限に達し、新しい接続を確立できない可能性があります。 解決策:
|
| MongoDB ドライバーの待機キューがいっぱいです。これは、接続プールに指定された接続数が少ないか、同時リクエストが多いために発生する可能性があります。そのため、利用可能な接続が提供されません。 解決策:
|
| 過剰な数の同時接続が確立されると、利用可能なセッションが使い果たされる可能性があります。 解決策:
|
| 使用されているインスタンスのエンドポイントが正しいかどうかを確認してください。インスタンスのエンドポイントの詳細については、次のトピックをご参照ください。 |
| ECS インスタンスがプライベートネットワーク経由で ApsaraDB for MongoDB インスタンスに接続できません。 解決策:
|
|
|
| データがレプリカセットインスタンスのプライマリノードに書き込まれていません。 原因: 書き込み操作はプライマリノードでのみ実行できます。以前にプライマリノードのエンドポイントを接続に使用していた場合、プライマリ/セカンダリのスイッチオーバー後に接続されたノードがセカンダリノードになり、書き込み操作が失敗します。 解決策:
アプリケーションが切断された後に ApsaraDB for MongoDB インスタンスに自動的に再接続し、例外を処理して業務継続性を保護できるようにすることをお勧めします。 |
| ディスク容量が不足しているため、ApsaraDB for MongoDB インスタンスがロックされています。 解決策: 詳細については、「ディスク容量の不足によりインスタンスがロックされたり、インスタンスにデータを書き込めなくなったりした場合の対処方法」をご参照ください。 |
|
|
| 提供されたデータベースアカウントのパスワードに特殊文字が含まれています。特殊文字には 解決策: 詳細については、「接続文字列のアカウント名またはパスワードに特殊文字が含まれているために接続に失敗した場合の解決方法」をご参照ください。 |
| ApsaraDB for MongoDB は |
バージョン 4.2 から 4.4 へのアップグレード時のエラー
エラーメッセージ | 原因と解決策 |
CHECK_USER_COLLECTIONS_IN_ADMIN_FAILED | 原因: 解決策:
|
CHECK_USERS_AND_ROLES_FAILED | 原因: 解決策: 変更が必要なアカウントとロールは、コンソールのエラーメッセージに「user my_user has high privilege role readWrite」と表示されます。次のコマンドを実行して、 重要 コマンドを実行する前に、アプリケーションがこのアカウントを使用して |