none
MSSQL replication遇到交易記錄檔過大 RRS feed

  • 問題

  •  我的環境是:
    【Publication】SQL 2000(push 5 transactional replication to Subscription)
    【Subscription】SQL2000/SQL2005

    因為我的Publication database遇到交易記錄檔過大的情形,需要shrink Publication database的交易記錄檔。
    我們資深的DBA說若是一定要DBCC SHRINKFILE的話,要在Publication database沒有transaction時,去DBCC SHRINKFILE,replication才不會出問題。
    而且是用以下步驟
    1)當Publication database沒有transaction時,backup log to disk如下:
    use AAA
    go
    BACKUP LOG AAA TO DISK = N'c:\AAA.bak'
    WITH DESCRIPTION = N'2008.10.29'
    , NOFORMAT, NOINIT, NAME = N'AAA-Transaction Log Backup'
    , SKIP, NOREWIND, NOUNLOAD, STATS = 10
    GO

    2)前一步驟backup log成功,再去DBCC SHRINKFILE
    use AAA
    go
    DBCC SHRINKFILE (N'AAA_Log' , 1024)
    GO


    請問一下:以上步驟是否確實會導致replication fail?(如果執行shrink時正好有transaction在push)
    2009年2月19日 上午 02:34

解答

  • It shouldn't affact replication, since sql will not remove un-replicated transactions from log.
    • 已標示為解答 misguy 2009年2月20日 上午 12:23
    2009年2月19日 下午 02:31

所有回覆

  • It shouldn't affact replication, since sql will not remove un-replicated transactions from log.
    • 已標示為解答 misguy 2009年2月20日 上午 12:23
    2009年2月19日 下午 02:31
  • rmiao 表示:

    It shouldn't affact replication, since sql will not remove un-replicated transactions from log.


    Hello rmiao:
    Thanks for your response.
     Do you think it is same in SQL 2005?
    2009年2月20日 上午 01:30
  • Yes, replication works same way in sql2k5.
    2009年2月20日 下午 01:45