Help us understand the problem. What is going on with this article?
すでにOracle シングル・サインオンのアカウントをお持ちのお客様は、上記のログイン をクリックしてお進みください。 登録がお済みではなく、アカウントをお持ちでないお客様は、Sign Up より登録画面へお進みください。
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 数年やってないと記憶の彼方に飛んでいきそうだったので、MySQLのクエリ改善方法のテンプレを自分用に明記。 スロークエリを除去する事。 初めはとにかく観察。スロークエリを出力させて、観察する。 indexが効かないクエリを排除する。 indexが予期できない条件分岐によるクエリを廃止する。 場合によってはソートをさせない。コード側でソートさせる。 JOINをわざとさせないのも一つの手。後にDB分離レベルのシャーディング等が発生する可能性のあるようなシステムでは、JOIN禁止にする事は決して間違ってはいない。 indexを必ず効かせる レ
Copyright © 2004-2025 Impress Corporation. An Impress Group Company. All rights reserved.
はじめに はじめまして、yoku0825といいます。とある企業のDBAです。 この連載を始めるにあたり、簡単に筆者の背景(この連載が、どんな仕事をしている人間によって書かれたか)を説明しておきたいと思います。 筆者は「とある企業でDBA(データベースを専門で面倒を見る人)」として雇用されています。「データベースの面倒を見る」というと、サーバーサイドアプリケーション(データベースの上のレイヤー)を書く人が担当している場合やインフラエンジニア(データベースよりも下のレイヤー)と呼ばれる人たちが担当している場合を多く耳にしますが、筆者はこれを専門的に、仕事をしている時間はほぼデータベースのことを考えていたり検証したりチューニングしたりしています。 このような背景から、筆者はたしなみ程度にしかプログラムが書けません。サーバーサイドアプリケーションはほぼブラックボックスです(見ようと思えば見られると
この章では、MySQL のパフォーマンスを最適化する方法について説明し、例を示します。 最適化には、いくつかのレベルでの構成、チューニング、およびパフォーマンスの測定が含まれます。 業務の役割 (開発者、データベース管理者、または両方の組み合わせ) に応じて、個々の SQL ステートメント、アプリケーション全体、単一のデータベースサーバー、または複数のネットワーク接続されたデータベースサーバーのレベルで最適化できます。 プロアクティブにパフォーマンスを事前に計画する場合や、または問題の発生後に、構成やコードの問題のトラブルシューティングを行う場合があります。 CPU やメモリーの使用を最適化することで、スケーラビリティーを向上し、データベースを低下させず、より多くの負荷を処理させることもできます。
結果セットから指定した数の行のみが必要な場合、結果セット全体をフェッチして、余分なデータを破棄するのではなく、クエリーで LIMIT 句を使用します。 MySQL は LIMIT row_count 句があり HAVING 句のないクエリーを最適化することがあります。 LIMIT で少数の行のみを選択すると、MySQL では、通常フルテーブルスキャンを実行するより望ましい特定の場合に、インデックスが使用されます。 LIMIT row_count を ORDER BY と組み合せると、MySQL はソート結果の最初の row_count 行を見つけた直後に、結果全体をソートするのではなくソートを停止します。 インデックスを使用して順序付けが行われている場合、これはきわめて高速になります。 filesort を実行する必要がある場合、最初の row_count を見つける前に、LIMIT 句を
1 Copyright 2009 Sun Microsystems inc The World’s Most Popular Open Source Database Linux/MySQLサーバーの パフォーマンスチューニング 松信 嘉範 (MATSUNOBU Yoshinori) http://twitter.com/matsunobu http://opendatabaselife.blogspot.com 2 Copyright 2009 Sun Microsystems inc The World’s Most Popular Open Source Database 自己紹介 • Sun Microsystems所属 MySQLコンサルタント • 2006年9月からMySQLコンサルタント として勤務 • パフォーマンスチューニング、 HA環境の構築、DBAトレーニング等 お気
1 Copyright 2009 Sun Microsystems inc The World’s Most Popular Open Source Database MySQLのパフォーマンスチューニングと よくある落とし穴 松信 嘉範 (MATSUNOBU Yoshinori) Principal MySQL Consultant, Sun Microsystems yoshinori.matsunobu@gmail.com 2 Copyright 2009 Sun Microsystems inc The World’s Most Popular Open Source Database テーマ • ハードウェア選定、バージョン選定 • ロードなどの更新処理のパフォーマンス改善 – 今日のセッションのメイン • レプリケーション • 全文検索 • その他 3 Copyright 20
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く