Share via


部署資料層應用程式

資料層應用程式 (DAC) 會定義支援應用程式所需的所有 SQL Server Database Engine 結構描述與執行個體物件 (例如,資料表、檢視表和登入)。DAC 可以內建到 DAC 封裝內,這個封裝是包含資訊清單的 XML 檔案,此資訊清單會定義應用程式所使用的所有 Database Engine 物件,並用來部署 DAC。DAC 會提供用來部署和管理的一個單位來簡化資料層物件的管理。

部署 DAC 封裝

您必須建置 DAC 封裝檔案來部署 DAC。DAC 封裝是 DAC 的部署機制,正如應用程式可執行檔案是應用程式可執行檔的部署機制一樣。如需有關建置 DAC 封裝檔案的詳細資訊,請參閱<實作資料層應用程式>。

安全性注意事項安全性注意事項

建議您不要部署來源不明或來源不受信任的 DAC 封裝。這類 DAC 可能包含惡意程式碼,因此可能會執行非預期的 Transact-SQL 程式碼,或是修改結構描述而造成錯誤。在您使用來源不明或來源不受信任的 DAC 之前,請解除封裝 DAC 並檢查程式碼,例如預存程序或其他使用者定義的程式碼。如需有關檢視 DAC 內容的詳細資訊,請參閱<如何:驗證 DAC 封裝>。

DAC 可部署至執行 SQL Server 2005 Service Pack 4 或更新版本的 Database Engine 執行個體,或部署至 SQL Azure。DAC 作業需要使用 SQL Server 2008 R2 中的用戶端工具,也可能必須使用 DAC Framework 1.1。如需詳細資訊,請參閱<SQL Server 物件和版本的 DAC 支援>。

當部署資料層應用程式精靈部署 DAC 封裝時,它會執行以下的主要動作:

  • 要求部署時間屬性,例如將部署 DAC 的 Database Engine 或 SQL Azure 執行個體名稱。

  • 針對該執行個體評估 DAC 放置原則 (如果有定義的話),並報告評估成功或失敗。如果未能符合一個或多個原則條件,您可以決定選取另一個執行個體、重新設定指定的執行個體,或是在您認為評估結果不重要時予以忽略。部署至 SQL Azure 執行個體時,不適用於 SQL Azure 的原則條件 (例如作業系統版本) 永遠會評估為 false。

  • 建立 DAC 內所定義的資料庫和所有物件。此資料庫會使用 Database Engine 執行個體的屬性預設值來建立 (如復原模式)。此資料庫有一個資料檔和一個具有下列屬性的記錄檔:

    • 部署內指定的檔案位置。部署至 SQL Azure 時,無法指定檔案位置。

    • 資料檔大小為 3 MB,成長增量為 1 MB,而且沒有大小限制。

    • 記錄檔大小為 1 MB,成長增量為 10%,大小限制為 2 TB。

在 SQL Server Management Studio 中,您可以在 [物件總管] 中導覽至伺服器底下的 [管理] 節點來啟動部署資料層應用程式精靈,並以滑鼠右鍵按一下 [資料層應用程式] 節點,然後選取 [部署資料層應用程式]

部署後,資料庫的管理方式與任何其他資料庫一樣。資料庫的組態是使用類似 ALTER DATABASE Transact-SQL 陳述式的一般機制、Management Studio 中的資料庫管理對話方塊或是 SQL Server PowerShell 提供者中的 SQL Server 管理物件來完成。部署程序應該包含在部署 DAC 之後用來執行一般組態變更的步驟,例如:

  • 建立檔案與檔案群組,或變更檔案的大小。

  • 建立及測試備份和還原程序。

  • 設定資料庫選項。

如需詳細資訊,請參閱<修改資料庫>。

升級部署的 DAC

部署 DAC 第一版之後,開發團隊可以開發新版應用程式和 DAC。如需有關將已部署的 DAC 升級為新版本的詳細資訊,請參閱<升級資料層應用程式>。

登入密碼

為了提高安全性,SQL Server 驗證登入會儲存在 DAC 封裝中,而且沒有任何密碼。當您部署或升級此封裝時,此登入會建立為停用的登入,而且會產生密碼。若要啟用登入,請使用具有 ALTER ANY LOGIN 權限的登入進行登入,並使用 ALTER LOGIN 來啟用登入,然後指派可以傳達給使用者的新密碼。Windows 驗證登入不需要這項處理,因為這類登入的密碼不是由 SQL Server 所管理。