1

本番データベースの読み取り専用のログ配布コピーであるデータベースを監視するための一貫した方法が必要です。これまで、私は次の方法に依存していました。

  1. ログをデータベースに復元するジョブを設定し、最後のステップとして別のジョブを開始します。
  2. ログをデータベースに復元するジョブを設定して、最後のステップとしてコントロールテーブルにレコードを挿入します。
  3. msdbデータベースにクエリを実行して、ログをデータベースに復元するジョブのステータスを確認します。
  4. トランザクションログがバックアップされる直前に値を取得するデータベース自体の内部の制御テーブルをクエリします。
  5. データベース内のテーブルからMAX値をクエリして、最近変更があったかどうかを確認します。

上記のメソッドは機能しますが、さまざまな理由で、クエリを実行するすべてのログ配布データベースに実装できるわけではありません。ログ配布されたデータベースの「現在のデータ」の日付を監視するための最良の方法は何ですか?

4

2 に答える 2

2

バックアップと復元のテーブルに必要なすべての情報があります。

  • restorehistoryを調べて、対象のデータベースに適用されている最新のバックアップを見つけます。
  • ソースバックアップセットテーブルを調べて、上記で検出されたバックアップが作成された日付を見つけます。
于 2010-04-18T18:00:27.637 に答える
0

私にとって有望と思われる解決策の1つは、[データベースのプロパティ]ウィンドウの[全般]タブにある[最後のデータベースログのバックアップ]フィールドと[最後のデータベースのバックアップ]フィールドを使用することです。このデータが保存されている場所や、データベースの値を返すコマンドを知っている人はいますか?残念ながら、権限の問題により、ここでログ配布されたデータベースを使用するサーバーでトレースを実行することはできません。また、これらの日付は、バックアップとログの「現在のデータ」の日付ですか、それともバックアップとログがサーバーに適用された時刻だけですか。明らかに、後者は私にはあまり役に立ちません。

于 2010-04-18T13:33:25.107 に答える