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