skillup

技術ブログ

Database

slow-query-logについて

投稿日:2017年3月6日 更新日:

データベースを伴う部分でののチューニングですが、大きく分けると

  1. SQLを書き直す
  2. インデックスを張りなおす
  3. プログラム内部でキャッシュを有効化する
  4. 設定ファイルの修正

上記のようなかんじになるのではないかと思います。

SQLの書き直しですが、SQL自体が遅い場合とSQLの発行回数を抑えるなどの方法があげられるでしょう。

そこで大切になってくるのが遅いSQLを特定することですね。

データがあまりない場合、遅さがわからなかったりするのでそもそも遅いものを特定することが大切になってきます。

MySQLにはslow_query_logという遅いクエリを出力する機能があります。どれくらい遅いかも自分で設定できるので、

この場合設定ファイル( /etc/my.cnf )に下記のように書いてあげればOKです。

※ただログを吐くと当然その分遅くなるので、できれば開発でやったほうが良いようです。

MySQLのslow-query-logの出力場所を確認する
MySQL初級者を脱するために勉強してること -調査編-

-Database
-

執筆者:


comment

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

関連記事

no image

CASE式のすすめ

SQL実践入門を7割がたぐらい終えたところで同著者の方の「達人に学ぶSQL徹底指南書」を学習しようと思っています。 この方の著書は気づいたら結構読んでましたね。 Contents1 CASE式での注意 …

no image

アンチパターン バインド変数の未使用+直積組み合わせ+データ量爆発+インデックス関連

本日はSQLコーディングに関して。 ここら辺は実際にプログラムを書く際に重要になってくるネタ。 Contents1 バインド変数1.1 デメリット1.2 対策2 直積により組み合わせが爆発する2.1 …

no image

netbeansのJPQL補助機能

JPAでは基本的に生のSQLではなく、JPQLを使って書きます。 SQLでもタイプミスにイライラさせられることは多いのですが、JPQLはもっとですね・・・爆 そこで使えるのがNetbeansの入力補助 …

no image

JSON型の検索

複数のタグなどを入れる場合、JSON型のカラムやデータなどを入れることがあるかと思いますが、ここから検索できるということが昨日わかりましたので、メモしておきます。 SQLServerで発見しましたが、 …

no image

Postgresメモ(データベース、スキーマ、他pgadminなど)

postgresをちょこちょこ触っており、超基礎的な事に関してMySQLでは触れられていないネタなどについて。 以前のリンク Postgresの基礎(主にMySQLとの違いなど) Contents1 …

アーカイブ