fc2ブログ

t100のプログラミング脱出作戦

自分のプログラミング脳をプログラムにして、いつかプログラミングから脱出してやるぞっ!とか夢見ながら、日々プログラム作っていく 百野 貴博 の日記です!今は、屋号『百蔵。』として、Silverlight・WPFを追跡中です! (2007/09/30)
なぜ mysql の using temporary; using filesort が遅いのか
追記 2010-08-12

今回のエントリですが、「漢のコンピューター道 - Using filesort」で既に解説されていました・・・。
しかも、「漢のコンピューター道」さんの方が分かりやすいっ

うわぁぁぁん。゜(゚´Д`゚)ノ


----

帰宅してからBlog書こうと思っていたら、さっそく帰宅後の仕事でハマってしまってBlogが中断してしまいました、、、

いけませんね!
というわけで、日中の仕事の中でもBlogのネタを溜めるようにして頑張ります!


さて、今日はMySQLのチューニングネタです!

mysql のSQLをチューニングしていて、EXPLAIN を使って実行計画を見たときに
using temporary; using filesort に出くわす場合があります。

調べてみると、これはなんとしても回避した状況が内部で起こっているサインのようなんですが
じゃぁ何処を見直せばいいのかという判断は、意外と難しかったりします。

そもそも、このサインはなぜ遅いのか?なぜ発生してしまうのか?
その仕組みを理解しておかないと、原因調査もままなりません。

が、日本語サイトでは、なかなかそこまでの情報が引っかからないんですよね・・・。


というわけで、意を決して英語サイトに当たりを付けてみました。

中学の片言英語的な恥ずかしい条件でアタックw

mysql using filesort why



と思ったら、なんかいい感じのサイトがヒットしましたーっ!!

やりました。(`・ω・´)9m ビシッ

What does Using filesort mean in MySQL?

ここでもザックリ解説してあるのですが
さらに詳細として、セルゲイのサイトを紹介してくれています。

すばらしい。(`・ω・´)9m ビシッ


How MySQL executes ORDER BY


というわけで、以下訳です!
英語が苦手なので、雰囲気レベルの翻訳ですがご容赦ください・・・。

#英語が読める方は、元サイトを直接読まれることをオススメします。
#また、間違いを見つけた方は、指摘いただけるとありがたいです・・・。

⇒続きを読む ヽ(´ー`)ノ
スポンサーサイト



テーマ: プログラミング - ジャンル: コンピュータ

Windows 2008 ServerにMySQLを入れる。(Vistaも)
Hyper-V 上に構築したWindows 2008 Server(x64)にMySQLをインストールしようとしたら、インストール後のコンフィグレーションが起動しねぇぇぇぇ

むおおっ
トホホ・・・

というわけで、対応方法を調べてみました。
どうやら、Vistaでも同じ現象が起こっている模様。

MySQL Server 5.0.51a Installation guide for Windows Vista

ざっくり書くと、手順は以下の通りであります。
⇒続きを読む ヽ(´ー`)ノ