MySQLのクエリキャッシュの設定方法
2024/05/22
MySQLでのクエリキャッシュ設定及び設定項目について以下にメモ。
目次 [非表示]
設定方法
サーバにSSH接続し以下でMySQLの設定ファイルを開く。
vi /etc/my.cnf
vi /etc/my.cnf
vi /etc/my.cnf
以下を追記する。
query_cache_limit = 2M
query_cache_min_res_unit = 4k
query_cache_size = 32M
query_cache_type = 1
query_cache_limit = 2M
query_cache_min_res_unit = 4k
query_cache_size = 32M
query_cache_type = 1
query_cache_limit = 2M query_cache_min_res_unit = 4k query_cache_size = 32M query_cache_type = 1
以下でMySQLを再起動すると反映される筈。
service mysqld restart
service mysqld restart
service mysqld restart
設定項目
query_cache_limit
この値を超える大きさのクエリ(結果)はキャッシュしないというもの。
query_cache_min_res_unit
ブロックのサイズ。
query_cache_size
クエリの結果を格納するために割り当てるメモリ量
query_cache_type
- 0:キャッシュへの格納、結果の取り出しをいずれも行わない
- 1:クエリを除くすべての結果をキャッシュする
- 2:クエリのみキャッシュする
その他
後は普通にSQL文を実行するとキャッシュされるが、キャッシュさせたくない時は以下のようにSQL_NO_CACHEをつける。
SELECT SQL_NO_CACHE *
FROM testtable;
SELECT SQL_NO_CACHE *
FROM testtable;
SELECT SQL_NO_CACHE * FROM testtable;
関連記事
-
-
MySQLで直近〇日、〇ヶ月、〇年以内のデータを検索する方法
他社が作成されたSQL文を見ているとDATE_ADDという使ったことの無い関数が ...
-
-
MySQLのtinyintのカラムにbool値を入れた場合
他所のシステムに携わることがあり中身を色々見ているとMySQLでtinyint( ...
-
-
MySQLでグループ化したものを条件で絞る(HAVING)
正規化したテーブルがあってその中には idとtagのカラムがある。 でtagの方 ...
-
-
MySQLでINSERT時にオートインクリメントではないカラムに連番を登録する方法
MySQLでINSERT時にオートインクリメントではないカラムに連番を登録したい ...
-
-
MySQLにてSELECT時にdate型のカラムから和暦を計算し表示する方法
MySQLにdate型のカラムに誕生年月日が格納されており、そこから和暦を計算し ...