共用方式為


複寫至 Azure SQL 資料庫

適用於:Azure SQL 資料庫Fabric 中的 SQL 資料庫

您可以將 Azure SQL 資料庫或 Fabric SQL 資料庫設定為單向交易式或快照式複寫拓撲中的發送訂閱者,此拓撲從 SQL Server 和 Azure SQL 受控執行個體作為來源。

注意

本文說明使用事務複製將數據推送至 Azure SQL 資料庫 或 Fabric SQL 資料庫。 本文同樣適用於 Azure SQL 資料庫 和 Fabric SQL 資料庫,除非另有說明。

這與 活躍異地複寫無關,這是 Azure SQL Database 的一項功能,允許您建立單個資料庫的完整可讀複本。

支援的設定

版本

若要成功複寫至 Azure SQL 資料庫中的資料庫,SQL Server 發行者和散發者必須 (至少) 使用下列其中一個版本:

備註

嘗試使用不支援的版本來設定複寫可能會導致錯誤號碼 MSSQL_REPL20084 (處理序無法連線到訂閱者) 和 MSSQ_REPL40532 (無法開啟登入要求的伺服器<名稱>。登入失敗)。

若要使用 Azure SQL 資料庫的所有功能,您必須使用最新版的 SQL Server Management Studio (SSMS)SQL Server Data Tools

下列版本的 SQL Server 支援從 SQL Server 資料庫發佈至任何 Azure SQL Database

支援將資料從 SQL Server 資料庫發佈至 Fabric SQL 資料庫 的 SQL Server 版本如下:

  • SQL Server 2022 RTM CU12 和更新版本

複寫類型

複寫有不同類型

複製 Azure SQL Database Azure SQL 受控執行個體
標準交易 是 (僅作為訂用帳戶)
快照 是 (僅作為訂用帳戶)
合併複寫
點對點
雙向
可更新的訂用帳戶

備註

  • 僅支援對 Azure SQL 資料庫的發送訂閱。
  • 可透過使用 SQL Server Management Studio 或在發行者上執行 Transact-SQL 陳述式來設定複寫。 您無法使用 Azure 入口網站來設定複寫。
  • 若要驗證:
  • 複寫的資料表必須具有主索引鍵。
  • 您必須擁有現有的 Azure 訂用帳戶。
  • Azure SQL 資料庫訂閱者可位於任何區域。
  • SQL Server 上的單一發行集可以同時支援 Azure SQL 資料庫和 SQL Server (內部部署和 Azure 虛擬機器中的 SQL Server) 訂閱者。
  • 必須從 SQL Server (而不是 Azure SQL 資料庫) 執行複寫管理、監視和疑難排解。
  • 只有在sp_addsubscription中支援@subscriber_type = 0用於 SQL 資料庫。
  • Azure SQL Database 不支援雙向、立即、可更新或點對點複寫。

複寫架構

圖表顯示 Azure SQL 資料庫的複寫架構,其中包含不同區域的數個訂閱伺服器叢集,以及內部部署的 Azure 虛擬機器,內有連線至遠端叢集的發行伺服器、Logread 可執行檔和散發伺服器可執行檔。

情境

一般複製情境

  1. 在 SQL Server 資料庫上建立異動複寫發行集。
  2. 在 SQL Server 上使用 [新增訂閱精靈] 或 Transact-SQL 陳述式,建立推送到 Azure SQL 資料庫的訂閱。
  3. 在 Azure SQL 資料庫中的單一和集區資料庫中,初始資料集是由快照代理程式建立的快照,並由散發代理程式進行分發和應用。 透過 SQL 受控執行個體發行者,您也可以使用資料庫備份來初始化 Azure SQL 資料庫訂閱者。

資料移轉案例

  1. 可使用異動複寫,將資料從 SQL Server 資料庫複寫到 Azure SQL 資料庫。
  2. 重新導向用戶端或中介層應用程式以更新資料庫複本。
  3. 停止更新資料表的 SQL Server 版本,並移除發布。

限制

Azure SQL Database 不支援下列復寫選項:

  • 複製檔案群組關聯
  • 複製資料表分割方案
  • 複製索引分區方案
  • 複製使用者定義的統計資料
  • 複製預設繫結
  • 複製規則繫結
  • 複製全文索引
  • 複製 XML XSD
  • 複製 XML 索引
  • 複製權限
  • 複製空間索引
  • 複製篩選的索引
  • 複製資料壓縮屬性
  • 複製稀疏資料行屬性
  • 將 filestream 轉換為 MAX 資料類型
  • 將 hierarchyid 轉換為 MAX 資料類型
  • 將空間資料轉換為 MAX 數據類型
  • 複製擴充屬性

待決定的限制

  • 複製定序
  • SP 的序列化交易執行

範例

建立發行集和推送訂閱。 如需詳細資訊,請參閱

  • 創建出版物
  • 建立發送訂閱,方法是使用伺服器名稱作為訂閱者 (例如 N'azuresqldbdns.database.windows.net') 並使用 Azure SQL 資料庫名稱作為目的地資料庫 (例如 AdventureWorks)。

另請參閱