Cloud Infrastructure 上のAdobe Commerceでのデータベースダンプエラーのトラブルシューティング
メンテナンスモードを有効にし、cron をディアクティベートし、問題のあるテーブルを除外してデータベースダンプが正常に行われるようにすることで、magento-cloud db:dump エラーを解決します。
説明 description
環境:
クラウドインフラストラクチャー上のAdobe Commerce
問題/症状:
-
magento-cloud db:dumpコマンドの実行中に、次のエラーが発生します。mysqldump: Error 1412: Table definition has changed, please retry transaction when dumping table XXX at row: 0 -
プライマリ・データベースとセカンダリ・データベースの両方でエラーが発生する。
解決策 resolution
-
ダンプを実行する前に、メンテナンスモードを有効にします。 完了したら、メンテナンスモードを無効にします。
-
ダンプを実行する前に、cron タスクとインデックス作成タスクを非アクティブ化します。 完了したら、それらを再アクティブ化します。
-
Cron を無効にするには:
code language-none vendor/bin/ece-tools cron:kill vendor/bin/ece-tools cron:disable -
Cron を有効にするには:
code language-none vendor/bin/ece-tools cron:enable
-
-
メンテナンスモードを有効にする、または cron とインデックス作成タスクを非アクティブ化しても機能しない場合は、
mysqldumpで使用可能なオプションを使用して問題のあるテーブルを除外します。 例えば、影響を受けるテーブル(sales_order_data_exporter_cl_index_batchesテーブルなど)に対して除外を指定できます。環境に SSH 接続し、次のコマンドを実行します。
mysqldump -u $USER $DBNAME -p --triggers --routines --lock-tables --max-allowed-packet=32M --exclude-tablesales_order_data_exporter_cl_index_batches| gzip > /tmp/database.sql.gz -
ダンププロセス中に、問題のあるテーブルに影響を与える進行中のスキーマ変更や操作がないことを確認します。 別の試行を開始する前に、すべてのトランザクションが完了していることを確認します。
これらの手順で問題が解決しない場合は、Adobe サポート にお問い合わせください。
これらの手順に従うと、データの整合性を維持しながら、実稼動データベースダンプの正常な完了を妨げる問題に対処できます。