0

SQL Server 2008 インスタンスで起こっていることのリストを取得するにはどうすればよいですか?

どのクエリとプロシージャが実行されたか知りたいです。プラスは、彼らが費やした時間を知ることです。

この活動リストは、「誰」または「何が」それを引き起こしたものから独立していなければなりません。複数のアプリケーションと複数のユーザーからのものである可能性があります。

ありがとう!

4

2 に答える 2

0

オプション1

SELECT ObjectName,       
ObjectID,       
DatabaseName,       
StartTime,       
EventClass,       
EventSubClass,       
ObjectType,       
ServerName,       
LoginName,       
NTUserName,       
ApplicationName  
FROM ::fn_trace_gettable( 'Trace File Path', default )            
where EventClass in (46,47,164) and EventSubclass = 0  and DatabaseID = db_id();

トレースファイルのパスをどのように取得しますか?

SELECT Path FROM sys.traces where is_default = 1 ;

オプション#2

このアプローチにより、追加された列、または追加に使用されたコマンドがわかります

于 2012-08-26T18:16:20.820 に答える
0

私はそれが古い投稿であることを知っていますが、私はそれを見つけました。監査がこれまでのところあなたが望んでいたことをうまくやっていれば。しかし、SQL プロファイラーを試しましたか? それは間違いなくこの理由によるものです。SQL Server インスタンスで何が起こっているかを正確に確認してください。さらに分析するために、結果をテーブルに保存できます。(Windows パフォーマンス モニターの結果と組み合わせて、その間にサーバーで何が起こったかを確認することもできます)

于 2012-08-26T08:28:16.600 に答える