MySQL

概要

show processlistをした際に、copyng to tmp tableが表示されると、ディスクに直接テンポラリーファイルを書き出すため、結果が返るまでに時間がかかります。
そのための対策です。

対処

オンラインで設定

オンラインで対応可能なため、mysqlコマンドから下記を実行します。

mysql> show global variables like '%tmp%;
mysql> show global variables like '%heap%;

いずれもデフォルトは16MBです。
変更する値は◯MB×1024×1024の結果を記載します。

mysql> set global max_heap_table_size=268435456;
mysql> set global tmp_table_size=268435456;

my.cnfに下記を記述

mysql再起動時に有効になります。

max_heap_table_size = 256M
tmp_table_size = 256M

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-06-30 (木) 01:40:11