Sql-Server
我可以恢復所有表但不能恢復儲存過程嗎?
我有一個測試數據庫,我會定期從 SQL Server 2008 R2 中的生產備份文件中恢復它以獲取新數據。我們經常編輯\更改或更新測試數據庫中的儲存過程,以測試與生產儲存過程相比的數據!
是否只刷新\恢復表而不是儲存過程?所以我不必將它們重新編輯回我需要的更改?
這兩個數據庫(生產和測試)都在一台伺服器上。
我的數據庫大小約為 5 GB,我們買不起第三方工具。
在 SQLServer 中,沒有選項可以僅備份/恢復表。您可以創建一個 SSIS 包以從特定/所有表中導入數據,並使用 SQL 代理對其進行調度或手動執行。
由於數據庫生產和測試都在同一台伺服器上,因此與從遠端伺服器提取數據相比,數據載入可能更快。為了最大限度地減少生產數據庫的負載,請將備份還原到新數據庫,然後將數據導入測試數據庫。
如果您刪除並重新創建表以進行刷新,請確保在數據導入後創建索引。
或者,如果您選擇批量導入到現有表,請刪除索引並稍後重新創建它們,並將恢復模式更改為簡單或批量記錄。
如果您有幾個非常大的表,您可能可以考慮移動到單獨的文件組並進行部分備份和恢復。
您還可以嘗試第三方工具,例如Dell Litespeed、Idera 虛擬數據庫或Apex SQL 還原等,用於對象級還原。