Adobe Commerceのデータベースストレージに関するトラブルシューティング
この記事では、Adobe Commerceのデータベースストレージに関する問題を診断および解決するためのステップバイステップのトラブルシューティングガイドを提供します。 これは、/tmp と /data/mysql の容量不足、i ノードの枯渇、デフォルト以外の MySQL tmpdir などの設定変更に関連する根本原因を特定するのに役立ちます。 各手順では、診断に関する質問を示し、回答に基づいて関連するコマンド、ログまたはドキュメントを参照できます。
説明 description
環境
クラウドインフラストラクチャー上のAdobe Commerce
問題/症状
- データベース・ストレージの問題によるサイトの停止またはダウンタイム
- エラー デバイスに空き領域がありません(28)
- フル
/tmpマウントのため、ノードに SSH 接続できません /tmpまたは/data/mysqlディレクトリのディスク使用量が多い- お客様が買い物かごに製品を追加できない
- データベース接続エラー
- SQLSTATE
[08S01]のような Galera クラスターエラー:通信リンクの失敗:1047 WSREP - 使用可能なストレージを使い切ってノードクラッシュを引き起こすクエリ
- Inode の枯渇(ファイルが多すぎる)が
IUse% > 90%で示される
解決策 resolution
手順 1 - スペースの問題があるディレクトリの特定
/tmp しい問題はありますか?これは、次のような様々な症状で示されます。
/tmpマウントがいっぱいです- サイト停止または停止
- ノードに SSH 接続できない
- デバイスに空き領域がありません(28) などのエラーが発生しました
/tmp がいっぱいになったことによるエラーのリストについては、/tmp mount full を参照してください。
または、スペースの不足が原因で /data/mysql の問題が発生していますか? 症状は次のとおりです。
- サイト停止
- お客様が買い物かごに製品を追加できない
- データベース接続の失敗
- Galera エラー:SQLSTATE
[08S01]:通信リンクの失敗:1047 WSREP
MySQL のディスク容量が少ないことが原因で発生したエラーのリストについては、 クラウドインフラストラクチャ上のAdobe Commerceの MySQL のディスク容量が少ない を参照してください。
ディスク容量に関する問題が発生しているかどうか、およびNew Relic アカウントがあるかどうかが不明な場合は、New Relic Infrastructure monitoring Hosts ページ にアクセスしてください。 そこから
- 「 ストレージ 」タブをクリックします。
- グラフ表示 ドロップダウンを 5 件から 20 件に変更します
- ディスク使用率(%)のグラフまたは表で、ディスク使用率の高い表を確認します
詳しい手順については、New Relic インフラストラクチャの監視の「ストレージ」タブ > 参照してください 。
上記の現象が発生した場合は、inode の状態を調べて、これがファイル番号の問題に起因するものではないことを確認してください。 CLI/ターミナルで実行します。
| code language-none |
|---|
|
IUse% は 90%> すか?
-
はい - ファイルが多すぎます。 ディスク容量不足の場合にファイルを安全に削除する の手順を確認します。 これらの手順を完了したら、手順 2 に進みます。 さらに多くのスペースをリクエストする場合は、 サポートチケットを送信 してください。
-
いいえ -
/tmpおよび/data/mysqlディレクトリのディスク領域の使用状況を確認します。 CLI/ターミナルで実行します。code language-none df -h | grep mysql df -h | grep tmp
次に、手順 3 に進みます。
手順 2 - ディスク容量の確認
ファイルの数を減らしたら、CLI/ターミナルで次のコマンドを実行して、/tmp および /data/mysql でのディスク容量の使用状況を確認します。
| code language-none |
|---|
|
70% を超える値が /tmp または /data/mysql に使用されていますか?
-
はい - ステップ 3 に進みます。
-
いいえ - クエリによって使用可能なストレージが枯渇する可能性があります。 これにより、ノードがクラッシュして、クエリが強制終了し、
tmpファイルが削除される可能性があります。 MySQL コマンドラインクライアントにログインし、次を実行します。code language-none SHOW PROCESSLIST;
出力に問題のあるクエリがないか確認します。 未解決の場合は サポートチケットを送信 、空き容量を増やします。
手順 3 – 使用率の高いディレクトリの特定
/tmp- ステップ 4 に進みます。/data/mysql- ステップ 5 に進みます。
注意: デフォルトでは、データベースの tmpdir は /tmp に書き込みます。 データベース設定を確認するには、MySQL コマンドラインクライアントにログインし、
を実行します。
| code language-none |
|---|
|
tmpdir が引き続き /tmp に書き込んでいる場合は、Value 列に /tmp が表示されます。
手順 4 - /tmp mount full のトラブルシューティング
Adobe Commerceの/tmp mount full のトラブルシューティング に従います。 ソリューションを適用した後、CLI/ターミナルでを実行します。
| code language-none |
|---|
|
使用率は 70%< すか。
- はい – 問題が解決しました。
- いいえ - サポートチケットを送信 空き容量を増やします。
注意: Troubleshoot /tmp mount full のソリューションは、データベース tmpdir の変数を変更していないマーチャント向けに設計されています。これは、デフォルトでは /tmp に書き込まれます。 tmpdir の値を変更した場合は、Troubleshoot /tmp mount full の手順は役に立ちません。
手順 5 - デフォルトを確認
データベースの設定が元のデフォルトの状態でなくなる場合があります。 MySQL コマンドラインクライアント SELECT @@DATADIR; でを実行して、データベース tmpdir 設定を見つけます。
/data/mysql/ が出力されている場合、tmpdir は /data/mysql/ に書き込んでいます。 クラウドインフラストラクチャー上のAdobe Commerceでは MySQL のディスク容量が少ない の手順に従って、容量を増やします。 次に、CLI/ターミナルでを実行します。
| code language-none |
|---|
|
使用率は 70%< すか。
- はい – 問題が解決しました。
- いいえ - サポートチケットを送信 空き容量を増やします。