実践ハイパフォーマンスMySQL 読了

実践ハイパフォーマンスMySQL

実践ハイパフォーマンスMySQL


ずいぶん前に読み終わったときのメモがでてきたので貼付け。

1章 基礎知識

1.2.4 設定の変更

サーバ起動中に設定を変更

SET GLOBAL key_buffer=50M;

そのセッションだけ設定を変更

SET SESSION key_buffer=50M;

4章 インデックス

4.1.1 インデックスの概念

MySQLでは、1つのクエリを実行するとき、1つのテーブルにつき1つのインデックスしか使用できない

6章 サーバの性能チューニング

6.4.1 I/Oのボトルネックの解決方法

不適切なインデックスの場合に、明示的に別のインデックスを使用するようにする

SELECT ... USE_INDEX(time_stamp) ...

7章 7.5 管理と保守

問題のあるクエリを省略してレプリケーションを継続

MySQL 4.0.3以降

SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1
SLAVE START SQL_THREAD

付録A SHOW STATUSコマンドとSHOW INNODB STATUSコマンド

A.1.7 クエリキャッシュ
Qcache_queries_in_cache
クエリキャッシュに入っているクエリの結果の数
Qcache_inserts
MySQLがクエリの結果をキャッシュに挿入した回数
Qcache_hits
MySQLが実際にクエリを実行することなく、クエリキャッシュの中でクエリを見つけた回数
Qcache_lowmem_prunes
メモリ不足のためにMySQLがクエリキャッシュを切り詰めた回数。理想的にはゼロ
Qcache_not_cached
キャッシュできないクエリ数。キャッシュできないのは、明示的にキャッシュを使用しないことを選択したか、クエリの結果がquery_cache_limitより大きかった場合
Qcache_free_memory
キャッシュの空き容量(バイト数)
Qcache_free_blocks
キャッシュの空きブロック数
Qcache_total_blocks
キャッシュのブロックの総数。なるほどね、という程度の情報なので、あまり有益ではない