# http://www.users.gr.jp/ml/ に投稿した内容をそのまま、
# 元ネタはおがわみつぎさんの投稿された
# [SQL:10259] Re: データの保護と監視について、です。
■ SQL Server で C2 監査機能 (C2 Audit Mode) を有効にする手順
1. c2 audit mode の有効化
USE master
EXEC sp_configure 'show advanced option', '1'
RECONFIGURE
EXEC sp_configure 'c2 audit mode', 1
RECONFIGURE
2. SQL Server を再起動
3. エクスプローラを開くと
C:\Program Files\Microsoft SQL Server\Data フォルダの下に
AuditTrace_yyyymmddhhmmss.trc
というファイルを確認できる
ファイルのローテーションは、[SQL:10259] でのおがわさんのアドバイス
どおり
200 MB ごとで、あとは SQL Server の起動のタイミングでも
新しい trc ファイルが作成されます。
トレースした中身を確認するには、SQL Server を停止してから
プロファイラを起動して、AuditTrace_yyyymmddhhmmss.trc
を「ファイル」メニューの「開く」から開きます。
開いたトレースは、テーブル形式で保存し直すこともできます。
# 古いトレースファイルは SQL Server を停止しなくても開けます
ただ、C2 audit mode はプロファイラを自動実行しているだけで、
C2 監査基準で決まっているものをすべて記録しているみたいなので、
パフォーマンスのオーバーヘッドがかなり気になります。
最小限の、特定のイベントだけ記録する(顧客マスタ テーブルのみ
監査するとか)ようにしたい場合は、次の記事が参考になると思います。
[SQL Server] 監査証跡 (Audit Trail) をプロファイラで行なう方法
http://blogs.sqlpassj.org/matu_tak/archive/2004/10/08/4732.aspx
プロファイラを起動するストアドプロシージャを作っておいて、
それを 「SQL Server サービスの開始時に実行する」という
設定も可能です。
<参考資料>
・SQL Server 2000 Security - Part 10 - Auditing
http://www.databasejournal.com/features/mssql/article.php/3399241