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

JPAでのリレーションに関して

JPAではテーブルをクラスで定義します。もちろん例外とかはいろいろあるのですが、1テーブル1クラスというつくりで、これをエンティティと呼びます。 もともとクラスを作ってからDBを作成したり、JTAの規 …

no image

HAVING句がらみの計算式

「達人に学ぶSQL徹底指南書」読んでますが、かなり難しいものがでてきましたね。 テーブルは前回のものと同じ以下のものを使います。 name | income ————+——– サンプソン | 4000 …

no image

SQL基礎 結合に関して

SQL実践入門を読んで勉強しておりますが、本日は結合に関して。 Contents1 クロス結合2 内部結合3 外部結合4 結合のアルゴリズムとパフォーマンス4.1 NestedLoops4.2 Has …

no image

Postgres リモートホストからの接続他

今まで使ってきたデータベースはMySQLがほとんどなのですが、最近少し、Postgresを触っています。 今回はパスワードの設定とリモートからの接続など。 Contents1 postgresへのログ …

no image

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

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