有沒有通過編程方式確定當前是否正在特定數據庫上執行SQL Server備份的方法?如何判斷SQL Server數據庫是否正在備份
我們爲數據和日誌文件提供了自動化的數據庫備份腳本,每天晚上備份數據庫並每隔15分鐘備份一次日誌文件。但是,我們認爲如果日誌文件備份作業與完整備份運行時的運行時間相同,則該備份作業會失敗。
我想要做的是更改我的事務日誌腳本,以便在完整備份運行時不運行事務日誌備份。
如果有DMV或系統表,我可以查詢和解決這個問題?
有沒有通過編程方式確定當前是否正在特定數據庫上執行SQL Server備份的方法?如何判斷SQL Server數據庫是否正在備份
我們爲數據和日誌文件提供了自動化的數據庫備份腳本,每天晚上備份數據庫並每隔15分鐘備份一次日誌文件。但是,我們認爲如果日誌文件備份作業與完整備份運行時的運行時間相同,則該備份作業會失敗。
我想要做的是更改我的事務日誌腳本,以便在完整備份運行時不運行事務日誌備份。
如果有DMV或系統表,我可以查詢和解決這個問題?
是,它可以在SQL 2000中的問題不應該在2005+
問題見this ServerFault question它衝突的原因。
請參閱this Serverfault question瞭解更復雜的腳本。
是有
select * from sys.dm_exec_requests
where command = 'backup db'
and database_id = 6 --or whatever your db id is
+1感謝您的解釋。我將把它合併到我的腳本中。 – Guy 2010-06-10 21:55:39