我有一個駐留在第三方的數據庫的「日誌傳送」副本。日誌傳送每15分鐘運行一次,此時數據庫的所有連接都將被丟棄。數據庫用於報告目的。SQL Server中的MERGE與DROP表和重建索引
我決定從日誌發運(只讀)數據庫中的一些數據到每晚刷新一個新的數據庫。這將允許用戶連接到新的數據庫,而不會因日誌傳送而失去連接性。 (它還允許使用更細粒度的安全權限,因爲只讀副本不能被編輯)
我能想到2種模式來完成這個任務。
- 刪除表,創建表,創建索引
- 使用MERGE語句來插入/更新/刪除記錄
我一直在使用上面的方法1中實現的解決方案,它工作得很好。
這讓我感覺有點沉重,每天都會丟掉所有的數據。上面的方法1是否有任何副作用,會促使我使用方法2?
提供規模感,我只是同步3個表,
Table 1 - 38 columns - 13,110 rows
Table 2 - 82 columns - 17,421 rows
Table 3 - 22 columns - 249 rows
產生的數據庫是〜1.3 GB。 (還有其他一些表格)
我很感謝關於方法1和2的指導,以及是否有另一種方法,我沒有想到。
你看過事務複製嗎?我沒有足夠的知識來實際上幫助更多,但它可能是一個值得選擇的選項 – mxix
我沒有看到這個問題的背景下,因爲日誌傳送是我們的供應商支持的方法爲了獲得我們的數據副本。我假設由於日誌傳送的副本是隻讀的,因此我無法將其用於事務複製。 –