« 原発保障の枠組みを見るとやるせなさを感じます | トップページ | 明けましておめでとうございます IS11Tに変えました »

2011年5月14日 (土)

SQL-Server2008 R2のトレースファイル

会社のデータベースがサーバー機入れ替えに伴ってSQL-Server2000からSQL-Server2008R2に変わった。
それほど特別な設定をしてないので、移行自体は問題なくできたが、1件問題が出た。
内部統制の関係でDBアクセスをトレースファイルに出力し、そのファイルを毎月テーブルに読み込んで監査資料を作っているのだが、アップデート後読み込めなくなった。
具体的にはSQL Profilerにてトレースのスクリプトをエクスポートして、ストアドにセットしトレースファイルを出力、別のプログラムにてfn_trace_gettable関数を使ってテーブルに読み込み、クエリで監査資料を出力という操作をしていたのだが、2008R2にしてから

サーバー : メッセージ 567、レベル 16、状態 1、行 5
ファイル 'd:\****.trc' は存在しないか、トレース ファイルとして認識されません。または、ファイルを開くときにエラーが発生しました。

というメッセージが出て、読み込めなくなった。
いろいろ探しても情報があまりなく1つあったのはMSのサイトで
「SQL ProfilerのGUIから出力したトレースは読み込めない」

であったが、こちらはストアドで実行してるし・・
ストアドにセットしている内容も特に関係なささそうだったし・・
海外サイトをみてもあまり直接というものはなかった。

2008R2には監査機能がついたというので切り替えようかと思ったのだが、これはEnterpries EditionしかサポートしないということでうちのStandard Editionでは無理だった。

その後もいろいろ海外サイトを探していたら、実行アクセス権というのが関係あるという
のを見つけて、最終的には他のサーバーにおいていたトレースファイルを、同じDB
サーバーのフォルダに戻して読み込んだら、読み込めた。
1月くらい悩んで、最終的にはつまらない原因だったが、こういうとこを気づくのが結構難しいですね

« 原発保障の枠組みを見るとやるせなさを感じます | トップページ | 明けましておめでとうございます IS11Tに変えました »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: SQL-Server2008 R2のトレースファイル:

« 原発保障の枠組みを見るとやるせなさを感じます | トップページ | 明けましておめでとうございます IS11Tに変えました »