Skip to content →

MySQLのmy.cnf設定最適化メモ

Webエンジニアのためのデータベース技術[実践]入門であらためてデータベースを学びなおしているところです。負荷が少ないサービスだと、そのままの設定でも動きますが、利用者が膨大に増えた場合はそうもいっていられません。今回はその中のMySQL設定ファイルmy.cnfについて。

my.cnfの設定

log-binバイナリログを有効にするためのパラメータ。バイナリログには実行されたSQL文が記録されている。データが壊れた場合、バックアップした時間からしか復旧できないが、バイナリログがあればその間も補填できる。
slow-query-log実行に時間がかかったSQL文を記録。改善に役立つ。デフォルトは10秒。
max_connections同時接続最大人数。デフォルトは100。
innodb_buffer_pool_sizeメモリ上で管理するためのバッファサイズ。物理メモリの60%〜80%が望ましい。
innodb_flush_methodInnoDBデータファイル、InooDBログファイルの読み書き方式。O_DIRECTだとダイレクトなのでオーバーヘッドを減らせる。

このあたりがパフォーマンスに直結する重要設定。log-binやslow-queryはデフォルトではOFFになっています。

[sc name=”engeneer”]

SHARE

PROFILE

入江 慎吾
教える、学べるオンラインメンターサービスMENTAの代表 / 2-30個のサービスをつくり、M&Aで億単位の売却 / 受託開発20年→受託をやめサービス開発に専念→個人開発でつくったMENTAがヒット→ランサーズグループにジョイン / YouTubeで「サービスづくりで生きていく」配信中 / 「自分のサービスで生きていく」をコンセプトに個人開発オンラインサロン「入江開発室」を運営(詳しいプロフィール)

SUBSCRIBE

メールマガジンに登録いただけると、ブログの新着記事をお知らせいたします。(励みにもなります!)また、YouTubeチャンネルでも個人開発・サービスについての情報を発信中です。

SPONSOR

Published in 開発奮闘記