傳送資料庫工作

適用於:SQL Server Azure Data Factory 中的 SSIS Integration Runtime

「傳送資料庫」工作會在兩個 SQL Server 的執行個體之間傳送 SQL Server 資料庫。 與其他只能透過複製 SQL Server 物件來傳送它們的工作不同,「傳送資料庫」工作可以複製或移動資料庫。 這項工作也可用來在同一部伺服器內複製資料庫。

離線和線上模式

資料庫可以使用線上或離線模式傳送。 當您使用線上模式時,資料庫會保持附加狀態,並使用 SQL Management Object (SMO) 複製資料庫物件來進行傳送。 當您使用離線模式時,會卸離資料庫,複製或移動資料庫檔案,並在傳送成功完成後將資料庫附加至目的地。 如果複製資料庫,則會在成功複製後將資料庫自動重新附加至來源。 在離線模式中,資料庫的複製速度會更快,但使用者在傳送期間無法使用資料庫。

離線模式需要您在包含資料庫檔案的來源和目的地伺服器上,指定網路檔案共用。 如果資料夾已共用,且可由使用者存取,則您可以使用語法 \\computername\Program Files\myfolder\ 參考網路共用。 否則,您必須使用語法 \\computername\c$\Program Files\myfolder\。 若要使用後面的語法,使用者必須具有來源和目的地網路共用的寫入權限。

在 SQL Server 的版本之間傳送資料庫

「傳送資料庫」工作可以在不同 SQL Server 版本的執行個體之間,傳送資料庫。

事件

「傳送資料庫」工作並不報告錯誤訊息傳送的累加進度,它只報告 0% 和 100 % 完成。

執行值

執行值 (在工作的 ExecutionValue 屬性中定義) 會傳回值 1,因為與其他傳送工作不同,「傳送資料庫」工作只能傳送一個資料庫。

透過將使用者定義變數指派給「傳送資料庫」工作的 ExecValueVariable 屬性,可將與錯誤訊息傳送相關的資訊用於封裝中的其他物件。 如需詳細資訊,請參閱 Integration Services (SSIS) 變數在封裝中使用變數

記錄項目

「傳送資料庫」工作包含下列自訂記錄項目:

  • SourceSQLServer 此記錄項目列出來源伺服器的名稱。

  • DestSQLServer 此記錄項目列出目的地伺服器的名稱。

  • SourceDB 此記錄項目列出傳送之資料庫的名稱。

另外,在覆寫目的地資料庫時,會寫入 OnInformation 事件的記錄項目。

安全性和權限

若要使用離線模式傳送資料庫,執行封裝的使用者必須是 sysadmin 伺服器角色的成員。

若要使用線上模式傳送資料庫,執行封裝的使用者必須是 sysadmin 伺服器角色的成員,或是選取之資料庫的資料庫擁有者 (dbo)。

傳送資料庫工作的組態

您可以指定如果資料庫傳送失敗,工作是否嘗試重新附加來源資料庫。

「傳送資料庫」工作還可設為允許覆寫具有相同名稱的目的地資料庫,以取代目的地資料庫。

來源資料庫還可以重新命名為傳送處理序的一部分。 如果您想要將資料庫傳送至 SQL Server 的目的地執行個體,而該執行個體已包含相同名稱的資料庫,則重新命名來源資料庫便可允許傳送資料庫。 不過,資料庫檔案名稱也必須不同,如果目的地上已存在具有相同名稱的資料庫檔案,則工作會失敗。

當您複製資料庫時,資料庫不能小於目的地伺服器上的 model 資料庫大小。 您可以增加要複製的資料庫大小,或減少 model的大小。

在執行階段,「傳送資料庫」工作會使用一或兩個 SMO 連接管理員,連接到來源和目的地伺服器。 當您在同一伺服器上建立資料庫的副本時,只需要一個 SMO 連接管理員。 SMO 連接管理員會在「傳送資料庫」工作以外另行設定,然後在「傳送資料庫」工作中參考。 當工作存取伺服器時,SMO 連接管理員會指定要使用的伺服器和驗證模式。 如需詳細資訊,請參閱 SMO Connection Manager

您可以透過 SSIS 設計師或以程式設計方式設定屬性。

如需可在 SSIS 設計工具中設定的屬性的詳細資訊,請按下列主題:

如需如何在 SSIS 設計工具中設定這些屬性的詳細資訊,請按下列主題:

傳送資料庫工作的程式設計組態

如需有關以程式設計方式設定這些屬性的詳細資訊,請按下列主題:

傳送資料庫工作編輯器 (一般頁面)

使用 [傳送資料庫工作編輯器] 對話方塊的 [一般] 頁面,即可命名和描述傳送資料庫工作。 「傳送資料庫」工作會在兩個 SQL Server 的執行個體之間複製或移動 SQL Server 資料庫。 這項工作也可用來在同一部伺服器內複製資料庫。

選項。

名稱
為傳送資料庫工作輸入唯一的名稱。 這個名稱是作為工作圖示中的標籤使用。

注意

工作名稱在封裝內必須是唯一的。

說明
輸入傳送資料庫工作的描述。

傳送資料庫工作編輯器 (資料庫頁面)

使用 [傳送資料庫工作編輯器] 對話方塊的 [資料庫] 頁面,即可指定傳送資料庫工作中所含之來源和目的地資料庫的屬性。 「傳送資料庫」工作會在兩個 SQL Server 的執行個體之間複製或移動 SQL Server 資料庫。 這項工作也可用來在同一部伺服器內複製資料庫。

選項。

SourceConnection
在清單中選取 SMO 連線管理員,或按一下 [新增連接...]<>,以建立與來源伺服器的新連線。

DestinationConnection
在清單中選取一個 SMO 連線管理員,或按一下 [<新增連線...>],以建立目的地伺服器的新連線。

DestinationDatabaseName
指定目的地伺服器上之 SQL Server 資料庫的名稱。

若要使用來源資料庫名稱來自動擴展此欄位,請先指定 SourceConnectionSourceDatabaseName

若要重新命名目的地伺服器上的資料庫,請在此欄位中輸入新名稱。

DestinationDatabaseFiles
指定目的地伺服器上之資料庫檔案的名稱和位置。

若要使用來源資料庫檔案的名稱和位置來自動擴展此欄位,請先指定 SourceConnectionSourceDatabaseNameSourceDatabaseFiles

若要重新命名資料庫檔案,或要指定目的地伺服器上的新位置,請使用來源資料庫的資訊來擴展此欄位,然後按一下瀏覽按鈕。 在 [目的地資料庫檔案] 對話方塊中,編輯 [目的地檔案] 、[目的資料夾] 或 [網路檔案共用] 。

注意

如果您是使用瀏覽按鈕找到資料庫檔案,就可以使用本機磁碟機代號來輸入檔案位置:例如 c:\。 您必須以網路共用標記來取代此檔案位置,其中包含電腦名稱和共用名稱。 如果使用預設管理共用,您就必須使用 $ 標記,並具有管理權限存取該共用。

DestinationOverwrite
指定是否可以覆寫目的地伺服器上的資料庫。

此屬性具有下表所列的選項:

描述
True 覆寫目的地伺服器資料庫。
False 請勿覆寫目的地伺服器資料庫。

警告

如果您為 DestinationOverwrite 指定了 True,此舉可能會造成資料遺失,且會覆寫目的地伺服器資料庫中的資料。 為了避免此情形發生,在執行傳送資料庫工作之前,請先將目的地伺服器資料庫備份至其他位置。

動作
指定工作會將資料庫 [複製] 或 [移動] 至目的地伺服器。

方法
指定當來源伺服器上的資料庫處於線上或離線模式時,是否會執行工作。

若要使用離線模式來傳送資料庫,執行封裝的使用者就必須是 系統管理員 固定伺服器角色的成員。

若要使用線上模式來傳送資料庫,執行封裝的使用者就必須是 系統管理員 固定伺服器角色的成員,或是選取之資料庫的資料庫擁有者 (dbo)。

SourceDatabaseName
選取要複製或移動之資料庫的名稱。

SourceDatabaseFiles
按一下瀏覽按鈕,即可選取資料庫檔案。

ReattachSourceDatabase
指定失敗發生時,工作是否會嘗試重新附加來源資料庫。

此屬性具有下表所列的選項:

描述
True 重新附加來源資料庫。
False 請勿重新附加來源資料庫。

來源資料庫檔案

使用 [來源資料庫檔案] 對話方塊,即可檢視來源伺服器上的資料庫檔案名稱和位置,或指定傳送資料庫工作的網路檔案共用位置。

若要以來源伺服器上的資料庫檔案名稱和位置來擴展此對話方塊,請在 [傳送資料庫工作編輯器] 對話方塊的 [資料庫] 頁面中,首先指定 [SourceConnection][SourceDatabaseName]

選項。

來源檔案
在來源伺服器上,將會被傳送的資料庫檔案名稱。 [來源檔案] 是唯讀的。

來源資料夾
在來源伺服器上,要傳送之資料庫檔案所在的資料夾。 [來源資料夾] 是唯讀的。

網路檔案共用
在來源伺服器上,會從中傳送資料庫檔案的網路共用資料夾。 當您在 [傳送資料庫工作編輯器] 對話方塊的 [資料庫] 頁面中,將 [方法] 指定為 [DatabaseOffline] ,以離線模式傳送資料庫時,請使用 [網路檔案共用]

輸入網路檔案共用位置,或按一下瀏覽按鈕 (...) 以尋找網路檔案共用位置。

在離線模式中傳送資料庫時,資料庫檔案會複製到來源伺服器上的 [網路檔案共用] 位置之後,才傳送到目的地伺服器。

目的地資料庫檔案

使用 [目的地資料庫檔案] 對話方塊,即可檢視或變更目的地伺服器上的資料庫檔案名稱和位置,或是指定傳送資料庫工作的網路檔案位置。

若要使用來源伺服器上的資料庫檔案名稱和位置,來自動擴展此對話方塊,請先在 [傳送資料庫工作編輯器] 對話方塊的 [資料庫] 頁面中,指定 [SourceConnection][SourceDatabaseName][SourceDatabaseFiles]

選項。

目的地檔案
目的地伺服器上已傳送資料庫檔案的名稱。

輸入檔案名稱,或是按一下檔案名稱來編輯它。

目的資料夾
目的地伺服器上的資料夾,用於存放將傳送的資料庫檔案。

輸入資料夾路徑,按一下該資料夾路徑來編輯它,或是按一下瀏覽來找出在目的地伺服器上的資料夾,以存放要傳送的資料庫檔案。

網路檔案共用
在目的地伺服器上的網路共用資料夾,其中存放要傳送的資料庫檔案。 當您在 [傳送資料庫工作編輯器] 對話方塊的 [資料庫] 頁面中,將 [方法] 指定為 [DatabaseOffline] ,以離線模式傳送資料庫時,請使用 [網路檔案共用]

輸入網路檔案共用位置,或是按一下瀏覽來找出網路檔案共用位置。

當您以離線模式傳送資料庫時,在將資料庫檔案傳送到 [目的資料夾] 位置之前,會將其複製到 [網路檔案共用] 位置。