MySQL Serverのトラブルシューティング
MySQL Serverで見つかった問題をトラブルシューティングします。
空き領域が少ないために発生するSUPER_READ_ONLY
およびOFFLINE_MODE
の問題の解決
🔗
MySQL Serverは、使用可能なディスク領域が特定の構成値を下回った場合にSUPER_READ_ONLY
およびOFFLINE_MODE
を有効にします。
ヘルス・モニターでは、次のシナリオで
SUPER_READ_ONLY
およびOFFLINE_MODE
が有効になります。
- 使用可能なディスク領域は、
disk_low_space_duration
秒間、disk_low_space_level
またはdisk_low_space_percent
(いずれか低い方の値)を下回ります。 - 使用可能なディスク領域は、どの期間でも
disk_low_space_critical_level
を下回ります。
ノート
SUPER_READ_ONLY
サーバー変数は、DBシステムのデータベース・モードが読取り専用に設定されており、DBシステムのアクセス・モードが管理者のみに設定されている場合も、OFFLINE_MODE
サーバー変数が有効になります。super_read_only_disk_full
ステータス変数を確認します。空きストレージ領域が少ない場合にも有効になります。
コンソールの使用 🔗
コンソールを使用して、空き領域が少ないことによるMySQL ServerのSUPER_READ_ONLY
またはOFFLINE_MODE
の問題を解決します。
このタスクの前提は次のとおりです:
- クライアントがMySQL Serverに接続しようとすると、次のエラーが発生します:
MySQL Error 1290 (HY000): The MySQL server is running with the --super-read-only option so it cannot execute this statement @ file bytes range [1400005472, 1500005697).
MySQL Error 1290 (HY000): The MySQL server is running with the --offline-mode option so it cannot execute this statement @ file bytes range [1400005472, 1500005697).
super_read_only_disk_full
ステータス変数がON
であることを確認して、空き領域が少ないことが原因であることを確認します。mysql> SHOW STATUS LIKE 'super_read_only_disk_full'; +---------------------------+-------+ | Variable_name | Value | +---------------------------+-------+ | super_read_only_disk_full | ON | +---------------------------+-------+
この問題を解決するには、次のいずれかを実行します:
- ストレージ・サイズを増やし、DBシステムを再起動します。DB Systemストレージを増やすを参照してください。
- ストレージ・サイズを増やせない場合は、次を実行します:
- DBシステムの手動バックアップを作成します。バックアップの作成を参照してください。
- 手動バックアップを使用して、ストレージ・サイズを増やした新しいDBシステムを作成します。バックアップからのDB Systemの作成を参照してください。
- ヘルス・モニターは、ディスク領域不足がリカバリされた後、
SUPER_READ_ONLY
およびOFFLINE_MODE
サーバー変数をOFF
にリセットします。DBシステムのデータベース・モードが読取り専用に設定されている場合、DBシステムは書込み可能になります。DBシステムのアクセス・モードが管理者のみに設定されている場合、DBシステムではすべてのユーザーが接続できます。データベース・モードおよびアクセス・モードを維持するには、DBシステムを再起動する必要があります。
問題が起こらないようにするには:
- 自動ストレージ拡張を有効にできます。この機能により、空き領域がしきい値を下回ると、ストレージ・サイズが自動的に拡張されます。自動ストレージ拡張の有効化または無効化を参照してください。
- ディスク領域がクリティカル・レベルを下回る前に、
DbVolumeUtilization
メトリックを使用してアラートを送信できます。詳細は、DB Systemのストレージの確認を参照してください。
問題の発生を防ぐには、DbVolumeUtilization
メトリックを使用して、ディスク領域がクリティカル・レベルを下回る前にアラートを送信できます。詳細は、DB Systemのストレージの確認を参照してください。