SQLサーバーに関する別の質問:カウンターがリセットされて以来、最もCPUを集中的に使用するSQLを提供する簡単なクエリがあります。
select top 10
sum(qs.total_worker_time) as total_cpu_time,
sum(qs.execution_count) as total_execution_count,
qs.plan_handle, st.text
from
sys.dm_exec_query_stats qs
cross apply sys.dm_exec_sql_text(qs.plan_handle) as st
group by qs.plan_handle, st.text
order by sum(qs.total_worker_time) desc
質問1:正確には何plan_handle
ですか?Oracleのように、計画のハッシュではないように見えます。発言の計画に変化があった状況を発見したいのでお願いします。
質問2:plan_handleを取得したら、実際の計画に興味があります。だから私は、例えば:
select * from sys.dm_exec_query_plan (0x060006001F176406B8413043000000000000000000000000)
query_plan列には、クリックするとXMLドキュメントを表示するリンクが表示されます。それをwhatever.sqlplanとしてディスクに保存すると、Windowsでそれをダブルクリックでき、Management Studioで正しく表示されます。きっとこのステップを回避する方法があるに違いない!?
質問3:SET SHOWPLAN_TEXTの昔のように、XMLをテキスト形式に戻す方法はありますか?グラフィカルに表示できるようにしたいが、意味のある方法で差分を自動化したい。
ありがとう!
<ShowPlanXML xmlns="http://schemas.microsoft.com...
たが、直接表示する方法はまだありません.sqlplan
。最初にファイルとしてディスクに保存する必要があります。変だ。ありがとうtho ':)