您可以在不執行 BACKUP DATABASE 的情況下將資料庫置於備用模式嗎?

您可以在不執行 BACKUP DATABASE 的情況下將資料庫置於備用模式嗎?

有人知道是否有 T-SQL 方法可以將 SQL Server 資料庫置於備用只讀模式,就像使用 BACKUP DATABASE 的 STANDBY 子句一樣,但不需要執行 BACKUP DATABASE?

背景:我在 SQL Server 2005 Workgroup Edition 上有一個自製的日誌傳送設定。我找到了一個可以進行壓縮備份的第三方備份實用程式。它比 BACKUP DATABASE 更快,檔案也小得多,但它缺乏將資料庫置於備用/只讀模式的能力。在進行災難復原測試時,我需要這種故障轉移功能。如果我們進行故障轉移並將日誌從(現在處於活動狀態)備用伺服器發送回主伺服器,我們可以在測試結束時再次故障恢復,而不用重新開始。我可以使用 BACKUP DATABASE 而不是第三方工具來進行日誌尾部備份,但如果我不必這樣做,它會更乾淨。

答案1

不,沒有辦法在不同時從備份還原資料庫的情況下將資料庫置於備用模式。一旦資料庫可寫,您就無法準備好再次復原日誌,因為 LSN 鏈已損壞。

答案2

你能用嗎

更改資料庫 your_database 設定唯讀

然後使用

更改資料庫 your_database SET READ_WRITE

你想什麼時候恢復?

答案3

我必須承認,我回覆了您的其他帖子(關於您的備份軟體),現在我正在閱讀這個問題,我實際上有點擔心您正在使用的備份軟體。

這是「過於複雜」的解決方案實際上可能會導致未來災難的事情之一。我對你正在使用的備份軟體一無所知,但快速谷歌顯示了一些糟糕的評論(但不幸的是過時的評論)。

所以,我不知道。您想要使用此備份軟體而不是信任 MS SQL Server 為您做這件事是否有任何特殊原因?

速度和磁碟空間肯定比資料完整性和可靠性更重要嗎?

我在這裡錯過了什麼嗎?

也許保羅蘭德爾可能想插話一下?

相關內容