Magento 2 innodb_buffer_pool_sizeを更新するか、バッチサイズの値を減らしてください


10

Magento 2.2.2をインストールした後、エラーログを確認すると、この警告が表示されます。

一時テーブルに割り当てられたメモリサイズは、innodb_buffer_pool_sizeの20%を超えています。innodb_buffer_pool_sizeを更新するか、バッチサイズの値を減らしてください(一時テーブルのメモリ使用量が減ります)。現在のバッチサイズ:100000; 割り当てられたメモリサイズ:50000000バイト。InnoDBバッファープールサイズ:134217728バイト。

一時テーブルに割り当てられたメモリサイズが20%を超えているというエラーの場合。それはどの一時テーブルを参照していますか?どうすれば解決できますか?

回答:


6

Magentoは、InnoDBの代わりにメモリエンジンを使用することにより、大量のデータを処理するためのメモリを増やすことができます。このアルゴリズムは、max_heap_table_sizeおよびtmp_table_size MySQLパラメータのメモリ値を増やします。

一時テーブルに割り当てられたメモリサイズがinnodb_buffer_pool_sizeの 20%を超えると、エラーメッセージがMagentoログに書き込まれます。

このエラーメッセージを回避するには、「現在のバッチサイズ:100000」であるため、catalog_category_product(Category Products)インデクサーのデフォルトのバッチ構成を更新する必要があります。

詳細については、こちらをご覧ください


3
  • サーバーに移動します MySQL settings file (my.ini)
  • innodb_buffer_pool_sizeこの値を検索して増やします。

mySQL設定ファイル(my.ini)はどこにありますか?感謝
クリスウェン

これをmysqlではなくプロジェクトレベルで構成する方法はありますか?
rafaelphp

0

以前はフルパスが記録されていなかったため、ファイルはルートSSHの/etc/my.cnfにあります。/etc/my.cnfファイルに変更を加えたら、それらの変更を有効にするためにMySQLを再起動してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.