skillup

技術ブログ

Database

MySQLのメモリ設定

投稿日:

実務で結構サーバーをヘビーに使われるお客さんがいて、SQLが遅くなったりとしています。

なんとか対策しないといけないので、いろいろと調査をいます。

それで今回はMySQLのメモリ問題など。

MySQLのトータルのメモリ量は下記の公式で評価できるようです。

メモリ使用量 = グローバルバッファ + (スレッドバッファ x スレッド数)

http://qiita.com/zaburo/items/65bac3b8e0a635ada68c

http://sawara.me/mysql/1428/

初歩的なことから書いておりわかりやすいです。

グローバルはMySQL全体で消費されるメモリで、スレッドのほうは単一のコネクションで使用されるバッファのようです。

どうやらmax_connectionとinnodb_buffer_pool_sizeを適切に設定するのが肝のようです。

http://nick.hateblo.jp/entry/2014/01/26/183822

具体的な設定を試行錯誤しており、メモリの仕様なども随時出しているのでわかりやすい。

全然まとまってないので追記するかも・・・

-Database
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

cakePHPでの直SQL

今回はCakePHPにて直のSQLを書く方法を。 cakePHPにて大概の処理はもともと備わっているコマンドでなんとかなりますが、まれに直SQLを書いたほうがらくなこともあります。 書き方その1 [c …

no image

HAVING句について NULL時の動き

HAVING句のNULLがあった時の挙動にたいしてメモリます。 COUNTの処理 対象上の列数を数えるのにCOUNTを使うと思いますが、COUNT(*)とCOUNT(列名)では動きが若干違っており、前 …

no image

ajaxのasync:falseと複数DBのjoinに関して

本日も小ネタ集です。 Contents1 ajax:false2 複数DBでのJOIN ajax:false ajaxは非同期処理が基本ですが、async:falseとすると同期処理になります。 ただ …

no image

集合としてのSQL

今まで何度かSQLが集合ということを扱ってきました。 今回はそれがよくわかる例を。 実務ではあまりないと思うのですが、集合をイメージしやすい例題として、2つのテーブルが全く同じケースを考えます。 下記 …

no image

ユニークキーの設定

MySQLでのユニークキーの設定に関して。 ユニークキーの設定は下記の通り。

ユニークキーを作成した後に確認するのは下記コマンドで。 …