簡體   English   中英

MSSQL自動合並數據庫

[英]MSSQL Automatic Merge Database

我有一台裝有MSSQL數據庫的PC,該數據庫每秒填充800個變量。 我需要該數據庫至少每10分鍾將其合並/備份到另一台服務器PC上的另一個數據庫中。 另外,為了節省本地驅動器空間,每周必須擦除一次第一個數據庫,以便在任何給定時間僅將1周的數據存儲在該第一個數據庫上。 同時,第二個數據庫使所有內容保持不變,並且永遠不會被清除,只有每10分鍾進行一次合並時才會添加。

據我所知,這意味着我不能依賴數據庫鏡像,因為第一個數據庫將每周擦除一次。 因此,從我收集到的信息來看,這意味着我必須每10分鍾進行一次預定的合並。

我會很容易地承認我對SQL幾乎一無所知。 所以我的兩個問題是:

  1. 如何設置計划的合並,使其以10分鍾的頻率從一個數據庫發生到另一個數據庫?
  2. 如何設置一個計划/腳本化的數據庫,以便每周清除一次?

(注意:兩個數據庫都在MS SQL Server 2012 Standard上運行。)

假設您可以在連接到服務器B的服務器A上創建一個鏈接服務器( 這是指南

然后在您的表上創建一個觸發器,例如table1:

CREATE TRIGGER trigger1
ON table1
AFTER INSERT
AS
    INSERT INTO ServerB.databaseB.dbo.table1
    select *
    from inserted

更多有關觸發器的信息

對於第2部分,您可以安排作業以所需的時間表截斷表。 如何創建計划的工作
觸發器僅在插入上觸發,因此刪除行對服務器B上的表沒有任何作用。

如何通過存儲的proc清除/刪除數據? 如果是這樣,您還可以嘗試事務復制,並復制該特定存儲的proc的執行,但是在訂閱服務器上虛擬該proc,因此,當在訂閱服務器上復制並執行proc時,不會刪除/清除任何內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM