以下の内容はhttps://hirose31.hatenablog.jp/entry/20060504/1146751266より取得しました。
気になったところをメモ。
- SHOW INNODB STATUS\G
- ディスクアクセスを減らすために
- innodb_log_file_sizeはinnodb_buffer_pool_sizeの25%ぐらいにする
- これは、以下を前提としてのお話
- テーブルの大きさを小さくしよう
- 小さくすればバッファに乗りやすい→ディスクI/Oが減る
- 5.0からCREATE TABLE ... ROW_FORMAT=COMPACTがデフォルトになったよ
- 4.1以前の古い形式はROW_FORMAT=REDUNDANTね
- 最大20%ぐらい小さくなるよ
- PRIMARY KEYは短くしようね
- 全てのセカンダリインデックスのレコードにも、プライマリキーが保存されているから
- コミットんときのディスクI/Oを減らす
- commitしたときにディスクフラッシュしないようにする
- innodb_flush_log_at_trx_commit=2
- クラッシュリカバリにも関わるパラメータなのでよく考えてね
- OSとInnoDBの両方でバッファリングしてるのって無駄だよね
- 遅いOSのファイルフラッシュを排除する
- Linuxの場合、データをディスクにフラッシュするのにfsync()を使う
- fsync()は実装によってはすんごい遅いの
- そんときはinnodb_flush_method=O_DSYNCにするといいかもよ
以上の内容はhttps://hirose31.hatenablog.jp/entry/20060504/1146751266より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます
不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14