none
別サーバーでトランザクションログを復旧したい RRS feed

  • 質問

  • 皆様の力をお借りいたしたくお願いします。

    SQLserver2000standardを利用しておりますが、あるテーブルを削除してしまいました。削除前にたまたま作成したデータベースの複製からレコードを拾い出したものの20ほどのレコードがロストした状態です。

    稼動中のデータベースであるため、一時的にデタッチしてdataフォルダからMDFとLDFを複製して、別サーバーに復元しました。そこからトランザクションログのバックアップを作成して復旧する、と言う狙いです。

    ところが、最も新しい全体バックアップを元に作成したトランザクションログを復元しようとしたところLSNの番号があわないという主旨のエラーが発生しました。
    「このバックアップセットのログはLSN 94000000094300001に始まります。
    これはデータベースに適用するには遅すぎます。LSN 89000000059700001を
    含む以前のログバックアップを復元できます。
    RESTORE LOG が異常終了しました。」

    なにが原因で、回避のためにはどんな策がありうるでしょうか。

     

    2006年2月28日 0:51

回答

  • こういうときは元のサーバで

    BACKUP LOG XXXX TO DISK='C:\XXX.log' WITH NO_TRUNCATE

    とトランザクションログを取得します。
    当然、元サーバのフルバックアップが取得されていることが前提です。

    それから、別のサーバで、取得済みのフルバックアップ、トランザクションログを適用して、NO_TRUNCATE で取得したトランザクションログを STOPAT で削除してしまった前の時間で止めるというやり方をします。

    もし、これでもできないというのであれば、一時的に別のサーバに master/msdb のシステムデータベースファイルもコピーして、別サーバの SQL Server を起動します。

    起動後

    EXEC sp_dropserver '元サーバ名'
    GO
    EXEC sp_addserver '別サーバ名', 'local'
    GO

    とすれば、動作するようになります。
    ここまでできれば、元サーバの完全なコピーとなりますので、トランザクションログを取得して、リストアで STOPAT を使っても問題ないでしょう。

    2006年2月28日 5:25

すべての返信

  • こういうときは元のサーバで

    BACKUP LOG XXXX TO DISK='C:\XXX.log' WITH NO_TRUNCATE

    とトランザクションログを取得します。
    当然、元サーバのフルバックアップが取得されていることが前提です。

    それから、別のサーバで、取得済みのフルバックアップ、トランザクションログを適用して、NO_TRUNCATE で取得したトランザクションログを STOPAT で削除してしまった前の時間で止めるというやり方をします。

    もし、これでもできないというのであれば、一時的に別のサーバに master/msdb のシステムデータベースファイルもコピーして、別サーバの SQL Server を起動します。

    起動後

    EXEC sp_dropserver '元サーバ名'
    GO
    EXEC sp_addserver '別サーバ名', 'local'
    GO

    とすれば、動作するようになります。
    ここまでできれば、元サーバの完全なコピーとなりますので、トランザクションログを取得して、リストアで STOPAT を使っても問題ないでしょう。

    2006年2月28日 5:25
  • take40 さん、

     

    こんにちは!
    フォーラム オペレーターの服部 清次です。
    take40
    さんがこちらの質問を投稿されてからかなり時間が経過してしまいましたが、その後の状況はいかがでしょうか?

     

    今回、こちらの情報を他の方々にも活用していただきたいと思いましたので、私の方で回答チェックを付けさせていただきました。
    もし take40 さんの問題がまだ解決していない場合は、回答チェックを外していただくことも可能です。

     

    ぜひまた TechNet Forum にご参加ください。

    よろしくお願いします!
    それでは、また!

     

    _____________________________________________

    マイクロソフト株式会社 フォーラム オペレータ 服部 清次

     

    2008年10月3日 4:05