勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

MySQLのクエリキャッシュの設定方法

   2024/05/22  MySQL

MySQLでのクエリキャッシュ設定及び設定項目について以下にメモ。

 

設定方法

サーバにSSH接続し以下でMySQLの設定ファイルを開く。

vi /etc/my.cnf

以下を追記する。

query_cache_limit = 2M
query_cache_min_res_unit = 4k
query_cache_size = 32M
query_cache_type = 1

以下でMySQLを再起動すると反映される筈。

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;

 - MySQL

  関連記事

MySQLでカラム数の異なるテーブルを結合する(UNION)
MySQLでカラム数の異なるテーブルを結合する(UNION)

MySQLでカラム数の異なるテーブル同士をUNIONで結合させたかった。ただ、何 ...

MySQLでデータベース単位とテーブル単位のデータサイズ(容量)の調べ方
MySQLでデータベース単位とテーブル単位のデータサイズ(容量)の調べ方

VPSの各種ファイルを整理している際に「MySQLも不要なデータを削除すればいい ...

MySQLにてdate型のカラムから曜日を計算し表示する方法
MySQLにてdate型のカラムから曜日を計算し表示する方法

MySQLにてdateもしくはdatetime型のデータを取り出して曜日もあわせ ...

MySQLでIPを整数値としてカラムに格納する
MySQLでIPを整数値としてカラムに格納する

MySQLでIPを整数値としてカラムに格納しているケースがあった。今までIPが必 ...

MySQLで全国の市区町村のデータを入手し、抽出する方法
MySQLで全国の市区町村のデータを入手し、抽出する方法

都道府県と市区町村が連携したセレクトメニューを作成したかった。具体的には大阪府を ...