1

DevサーバーとStagingサーバーでMagentoのアップグレードを1.5から1.7に数回実行しても問題はありませんが、本番DBに対して実行しようとすると、完了するまでに永遠に時間がかかります(これまでのところ数時間)。

Magento DBをアップグレードするためのより良い方法はありますか?DBをアップグレードするために何時間もサイトをダウンさせることができません。

4

1 に答える 1

1

magentoはinnodbエンジンを使用し、更新と更新の間に大きなテーブルを変更してから主キーを削除/作成するまでの間に、テーブルのサイズと使用可能なリソースに永遠に依存するため、ここでIOのボトルネックに直面している可能性があります。

innodbでは、列が追加されると、テーブルは基本的に再作成され、進行中の一時テーブルにコピーされるため、データベーススタックに100k行があり、IOが不十分な場合(たとえばSSDを使用していない場合)、これは予想されます。

これは、sales_flat_quoteテーブルまたはsales_flat_order(行数が多いことを確認)で変更を実行し、所要時間を確認するだけで簡単に測定できます:)次に、実行する必要のあるすべての変更コマンドを掛けると、更新時間が得られます。Magentoはこちら側から見るとやや愚かで、変更やキーのドロップ/追加を1回の呼び出しではなく、1つずつ行うため、基本的に、変更が完了するのを待つことに時間を浪費している可能性が高くなります。

于 2013-01-04T03:00:55.097 に答える