SQL Server 2008 ログファイルを読み取る方法を探しています。情報を表示するのではなく、シンボルの意味とLOGテーブルの構造を読み取る方法を探しています。 DBCC LOG('my_table', 3)
を使用しています。
このStackOverflowの投稿で私の答えを参照してください:SQL Server 2005のトランザクションログファイルを表示するにはどうすればよいですか
または
次のコマンドを使用します。
Select * from ::fn_dblog(null,null)
詳細については、トランザクションログの単純なエントリをどのようにデコードしますかを参照してください。
まず、意味のあるデータを読み取れるようにするには、データベースが完全復旧モードである必要があります。そうでなければ、おそらくそこには多くを見つけることができません。これを行うには2つの方法があります。文書化されていないSQL関数の使用およびサードパーティツールの使用。
SQL関数:
DBCC LOGおよびfn_dblog-詳細 ここ および ここ
サードパーティツール:
Toad for SQL Server (実際にはログの読み取り以上のことを行います)および ApexSQL Log (トランザクションログの読み取りのみに焦点を当てています)。
コメントから、ユーザーが発行するクエリを確認したい場合:
トレースを開始するか、拡張イベントを使用してSQLテキストをキャプチャします。 方法:トレースの作成(SQL Serverプロファイラー)を参照してください。