2009-09-23 14 views
7

各インスタンスとSQL Serverエージェント/ジョブの開始/終了ログのSQL Server開始/停止ログの参照先を知りたいですか? SQL Serverの状態を監視するためのツールをいくつか開発しています。私はSQL Server 2008 Enterpriseを使用しています。事前にSQL Serverの開始/終了ログはどこにありますか?

おかげで、 ジョージ

+1

@ serverfault.comにお尋ねしましたか? – ethyreal

答えて

6

デフォルトでは、SQL Serverのエラーログは、Program Files \ MicrosoftのSQLサーバ\ MSSQL \ Logディレクトリに保存されています。最新のエラーログファイルはERRORLOGと呼ばれます。 SQL Serverを停止して再起動すると、古いログがアーカイブされ、新しいログが作成されます。また、DBCC ERRORLOGコマンドまたはsp_cycle_errorlogシステムプロシージャを実行して、エラーログを再作成することもできます。

http://sqlserverpedia.com/wiki/SQL_Server_Error_Logs

+0

ありがとう!私は答えを見つけました! – George2

+0

'Program Files \ Microsoft SQL Server \ MSSQL.n \ MSSQL \ LOG \ ERRORLOGとERRORLOG.n'に基づいています:https://technet.microsoft.com/en-us/library/ms187885(v=sql.105) ).aspx – Tilo

+0

残念ながら、anwerのリンクが壊れています – AFract

4

があり、いくつかの文書化されていないですが、うまくSQL自体からエラーログを読み取るために、システムの手順を知っている:

  • exec xp_enumerrorlogs 1 SQL Engineのエラーログファイル番号一覧が表示されます
  • exec xp_readerrorlog <errorlognumber>, 1戻ります要求されたEngineエラーログファイルの内容。
  • exec xp_enumerrorlogs 2は、要求されたエージェントのエラー・ログ・ファイルの内容を返しますエージェントのエラー・ログ・ファイル番号
  • exec xp_readerrorlog <errorlognumber>, 2が一覧表示されます。

これらは、Engineおよびエージェントのログを表示するためにManagement Studioによって呼び出されるプロシージャです。

+1

これらのエラーログをエクスポートできますか? –

+2

結果は通常の結果セットであり、行ごとに1つのテキスト行です。それをエクスポートすることを含め、あなたの希望に合わせて操作することができます。 –

4

.NETを使用している場合は、Microsoft.SqlServer名前空間を使用して、このデータの大部分をプログラマチックに取得することもできます。たとえば、Microsoft.SqlServer.Rmoを使用して、マージレプリケーションのパブリケーションに対するサブスクライバのステータスを取得しました。あなたが使っているものによっては、ログに直接アクセスすることを避けることができます(そしておそらく解析します)。

Microsoft.SqlServer.Management.Smo.Agent SQLエージェント固有のデータの名前空間を確認してください。

  • ビューとSQL Serverエージェントの設定を変更します。

    Microsoft.SqlServer.Management.Smo.Agent名前空間を使用することにより、あなたは次の操作を行うことができます。
  • オペレータを設定および管理します。
  • システムメッセージまたはパフォーマンスに基づいてアラートを設定および管理します。 条件。
  • 複数の手順とスケジュールでジョブを設定および管理します。
  • ジョブが実行されるサブシステムのプロキシアカウントを管理します。
  • 複数のサーバーで実行されるジョブを管理します。
関連する問題