共用方式為


Oracle 出版概覽

適用於:SQL Server

從 Microsoft SQL Server 2005 (9.x) 開始,您可以將 Oracle 發行者包含在複寫拓撲中 (從 Oracle 9i 版開始)。 發行伺服器可以部署在任何 Oracle 支援的硬體和作業系統上。 此功能是建立在 SQL Server 快照式複寫與異動複寫的堅實基礎上,可以提供相近的效能與可用性。

SQL Server 支援下列交易式與快照式複寫的異質性情況:

  • 將資料從 SQL Server 發行到非 SQL Server 訂閱者。

  • 將資料發布到 Oracle 以及從 Oracle 發布資料時的限制如下:

情境 2016 或更早版本 2017 或之後
從 Oracle 複寫 只支援 Oracle 10g 或更早版本 只支援 Oracle 10g 或更早版本
複寫到 Oracle 支援到 Oracle 12c 不支援

非 SQL Server 訂閱者的異質性複寫已被淘汰。 Oracle 發行功能不再建議使用。 若要移動資料,請使用異動資料擷取和 SSIS 建立方案。

Oracle 的快照複製

實作 Oracle 快照式發行集的方法與 SQL Server 快照式發行集相似。 針對 Oracle 發行集執行快照集代理程式時,代理程式會連接到 Oracle 發行者,並處理發行集中的每個資料表。 代理程式在處理每個資料表時,會擷取資料列並建立結構描述指令碼,然後儲存在發行集的快照共用區裡。 快照代理程式每次執行時都會建立整組資料,因此不像在使用交易式複寫時那樣將變更追蹤觸發器加入到 Oracle 資料表中。 快照式複寫提供一個便利的方式,能在對發行系統影響最小的情形下移轉資料。

Oracle 的交易異動複寫

Oracle 交易發行是使用 SQL Server 的交易發行架構實作;不過,是透過在 Oracle 資料庫上的資料庫觸發程序組合以及記錄讀取器代理程式來追蹤變更。 訂閱 Oracle 事務性發行的用戶會透過快照複寫自動完成初始化;後續的變更會由記錄讀取代理程式及時追蹤並傳送給訂閱者。

建立 Oracle 發行集時,會為 Oracle 資料庫中每一個發行資料表建立觸發程序與追蹤資料表。 變更發行資料表中的資料時,資料表上的資料庫觸發程序將啟動,並將相關資訊插入每個已修改之資料列的複寫追蹤資料表。 然後 SQL Server 散發者上的記錄讀取器代理程式會將資料變更資訊從追蹤資料表移至散發者上的散發資料庫。 最後,如同標準異動複寫一樣,散發代理程式會將變更從散發者移至訂閱者。