SQL Server 資料歸檔方案

2021-09-22 00:06:26 字數 2264 閱讀 5809

本文旨在從資料庫管理方面,提供將sql server大資料表歸檔的解決方案。可以作為新業務上線時進行方案設計的參考。

方案一:

方案介紹

bcp匯出資料到本地目錄目錄後,遍歷目錄檔案bcp匯入到臨時表,再迴圈刪除源表資料。通過insert into … left join …通過主鍵關聯臨時表和歸檔表排除存在的資料。(或通過2008及後續版本的merge語句,不存在插入,存在更新)

方案優缺點

優點:bcp效能好、通過sp容易控制邏輯、維護簡單

缺點:邏輯略繁瑣

方案二:

方案介紹

bcp匯出資料到遠端目錄後迴圈刪除源表資料,遍歷目錄檔案bcp匯入到臨時表,再通過insert into … left join …通過主鍵關聯臨時表和歸檔表排除存在的資料。(或通過2008及後續版本的merge語句,不存在插入,存在更新)

方案優缺點

優點:bcp效能好、通過sp容易控制邏輯、維護簡單

缺點:邏輯略繁瑣,兩台主機需要能unc共享訪問

方案三:

方案介紹

bcp匯出資料到本地目錄後ftp到遠端目錄,再迴圈刪除源表資料,遍歷目錄檔案bcp匯入到臨時表,再通過insert into … left join …通過主鍵關聯臨時表和歸檔表排除存在的資料。(或通過2008及後續版本的merge語句,不存在插入,存在更新)

方案優缺點

優點:bcp效能好、通過sp容易控制邏輯、維護簡單

缺點:邏輯略繁瑣,遠端要架設ftp伺服器

方案四:

方案介紹

bcp匯出資料到遠端目錄後迴圈刪除源表資料,遍歷目錄檔案ssis資料匯入和更新。

方案優缺點

優點:bcp效能好

缺點:字段變更後ssis包需同步修改,ssis包維護麻煩,兩台主機需要能unc共享訪問

方案五:

方案介紹

bcp匯出資料到本地目錄後ftp到遠端目錄,迴圈刪除源表資料,再遍歷目錄檔案ssis資料匯入和更新。

方案優缺點

優點:bcp效能好

缺點:字段變更好,ssis包需同步修改,ssis包維護麻煩,遠端要架設ftp伺服器

方案六:

方案介紹

資料插入到另乙個臨時歸檔庫後迴圈刪除源表資料,再將臨時歸檔表複製到遠端。

方案優缺點

優點:邏輯簡單

缺點:需要另建乙個臨時歸檔庫、增加了負載

方案七:

方案介紹

資料通過linkedserver插入遠端歸檔表後迴圈刪除。

方案優缺點

優點:邏輯簡單

缺點:linkedserver遠端效能問題

方案八:

方案介紹

切換分割槽到臨時表,資料再通過linkedserver插入遠端歸檔表。

方案優缺點

優點:資料歸檔方便

缺點:只針對分割槽表

方案九:

方案介紹

ssis將資料插入或更新到歸檔表後迴圈刪除源表。

方案優缺點

優點:邏輯整合

缺點:維護成本高,定位問題麻煩

方案十:

方案介紹

開源軟體,如eyearchive

方案優缺點

優點:開源軟體

缺點:方法單一

SQL Server 資料歸檔方案

sql server 資料歸檔方案 方案一 方案介紹 bcp匯出資料到本地目錄目錄後,遍歷目錄檔案bcp匯入到臨時表,再迴圈刪除源表資料。通過insert into left join 通過主鍵關聯臨時表和歸檔表排除存在的資料。或通過2008及後續版本的merge語句,不存在插入,存在更新 方案優缺...

sqlserver大資料歸檔

昨天做了個日常大資料歸檔,歸檔700w資料,表字段130左右,字段比較多,分享下!先禁用表的index 1.先獲取需要禁用的索引 declare tname varchar 100 set tname orders select alter index c.indexname on tname di...

SQL Server 快速刪除 歸檔資料方法小結

最近遇到了清理歷史資料的需求,整理一下不同場景及對應處理方法 這是最簡單的,truncate drop table即可 這種情況是,會不斷往表裡插入新資料但是並不會去查詢,一般是系統異常時開發手動去查。這種情況可以停業務將原表重新命名為bak表,再按原有表結構建立乙個新錶讓系統插入。bak表根據業務...