程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> DB2 與 Microsoft SQL Server 2000 之間的 SQL 數據復制

DB2 與 Microsoft SQL Server 2000 之間的 SQL 數據復制

編輯:DB2教程

WebSphere Replication Server 簡述

WebSphere Replication Server 是 IBM 信息集成產品家族中的重要產品,它廣泛應用在信息集成的多個領域中:比如跨地域數據采集和交換,企業內部數據交換平台,統一客戶信息等業務視圖,實現查詢系統與業務系統分離,業務系統高效鏡象備份,擴展商業智能應用,以及主機 AS400 的與開放平台數據交換等。

WebSphere Replication Server 能夠支持兩種數據復制:SQL 復制以及 Q 復制。其中,SQL 復制技術能在異構的主流關系型數據庫之間進行數據復制,Q 復制結合數據日志捕獲以及 WebSphere MQ 消息隊列傳輸技術提供更高吞吐量和低延時的數據復制。以上兩種復制技術都能支持多種數據同步拓撲結構,提供數據同步監控、數據一致性校驗和容錯機制。

DB2 與 Microsoft SQL Server 2000 之間的 SQL 數據復制

配置需求

要配置 DB2 與 Microsoft SQL Server 2000 之間的 SQL 數據復制,需要安裝好以下軟件產品和組件:

DB2 數據庫;

WebSphere Replication Server;

MS SQL Server 2000,如果數據庫在其它服務器,則本機需要安裝客戶端。

實現步驟

第 1 步是配置 MS SQL Server。本例中選用以下配置選項:

配置 MS SQL Server 的身份驗證方式時,選擇“SQL Server 和 Windows 身份驗證”。配置完成後,使用 MS SQL Server 的“查詢分析器”驗證用戶登錄成功。

注冊 MS SQL Server 數據庫為 ODBC 數據源。其中,配置“系統DSN”為實際的 MS SQL Server 服務器名稱。本例中使用“WIN2K3”。

第 2 步是配置 DB2 聯邦數據庫。配置好 MS SQL Server 數據庫之後,需要使用 WebSphere Replication Server 提供的對 MS SQL Server 數據庫的聯邦功能,映射需要復制的源表(存在於 MS SQL Server 數據庫中)到 DB2 數據庫的 Nickname,以支持數據復制。這需要完成一下四個步驟。

創建封裝器(Wrapper):執行命令 create wrapper MSSQLODBC3,其中,MSSQLODBC3是DB2定義的對應MS SQL Server數據庫的缺省封裝器名稱;

創建服務器(Server):執行命令 CREATE SERVER SSRCTEST TYPE MSSQLSERVER VERSION '2000' WRAPPER MSSQLODBC3 OPTIONS( ADD NODE 'WIN2K3', DBNAME 'ssrctest')。注:本例中使用 SSRCTEST 作為 Server Name,它應該對應於 MS SQL Server 的一個具體數據庫名稱;版本(VERSION)為 MS SQL Server 數據庫的版本屬性;OPTIONS 參數中,節點的名稱應該對應於已經設置為 ODBC 數據源的 MS SQL Server 節點名;OPTIONS 參數中,DBNAME 為實際需要用聯邦功能訪問的數據庫名稱。

創建 User Mapping:執行下面的命令以創建需要的用戶映射,CREATE USER MAPPING FOR DB2ADMIN SERVER SSRCTEST OPTIONS ( ADD REMOTE_AUTHID 'adminstrator', ADD REMOTE_PASSWord '*****') 。注:本例中使用 DB2 數據庫管理員用戶 DB2ADMIN。

創建 Nickname:執行命令 CREATE NICKNAME ADMINISTRATOR.TRC1 FOR SSRCTEST."dbo"."trc1";。注:本例中使用 dbo.trc1 作為復制源。

第 3 步是配置SQL數據復制。配置聯邦數據庫完成後,就可以開始配置實際的復制功能,這需要啟動 DB2 的復制中心並執行如下的步驟。

創建 Capture 控制器,從DB2復制中心選擇用定制方式“創建 Capture 控制表”:

圖 1. 創建 Capture 控制表

在“創建 Capture 控制表”窗口中,選擇“使用此 DB2 聯合服務器來捕獲對非 DB2 服務器的更改”選擇項,並在“非 DB2 服務器”選擇框中選擇之前創建的聯邦服務器。

圖 2. 創建 Capture 控制表的過程

根據窗口中的選項選擇完成後,點選“確定”創建 Capture 控制表。

添加 Nickname:

按照上面的描述創建好 Capture 控制表後,在復制中心窗口中即可看到該控制服務器,我們將在該 Capture 控制服務器上添加 Nickname。

圖 3. 添加 Nickname

按照上圖選擇,在彈出窗口中配置好需要進行復制的 Nickname。

圖 4. 配置好需要進行復制的 Nickname

本例中使用 ADMINISTRATOR.TRC1。

創建 Apply 控制器

和創建 Capture 控制表類似,在復制中心選擇使用定制方式創建 Apply 控制表。

圖 5. 創建 Apply 控制表

按上圖選擇,會彈出“創建 Apply 控制表”窗口。

圖 6. 選擇服務器

從窗口中選擇需要創建 Apply 控制表的數據庫服務器,之後按照提示操作即可。

創建預訂集(subscription sets)

在 Apply 控制服務器中選擇創建預訂集,則彈出創建窗口。首先,我們需要定義 Capture 控制服務器、目標服務器、Apply 控制服務器等,如下圖:

圖 7. 創建預訂集

在“源到目標映射”頁面,完成對於數據源表和目標表的配置。

圖 8. 添加源

另外,缺省的復制時間間隔為 20 分鐘,如需配置,可在“時間表”頁面完成。

圖 9. 完成預訂集的創建

本例中,配置 1 分鐘為復制的時間間隔。

完成以上的操作後,DB2 和 MS SQL Server 之間的復制配置就已經完成。本例中,配置了從 MS SQL Server 到 DB2 的數據復制。要啟用或者測試該復制功能,可按照如下的步驟啟動相應的服務器,並監控狀態和復制的工作。

第 4 步是測試 DB2 和 MS SQL Server 之間的 SQL 數據復制。

啟動 Capture 服務器

a) 執行如下命令以啟動 Capture 服務器:asncap capture_server=TESTRC2。注:也可以通過復制中心來啟動 Capture 服務器。命令中的“TESTRC2”是 Capture 服務器名稱,本例中使用 MS SQL Server 聯邦數據庫來做 Capture 服務器。

b) 檢查 Capture 服務器狀態,可以通過復制中心來檢查 Capture 服務器的狀態。

圖 10. 檢查 Capture 服務器狀態

啟動 Apply 服務器

a) 執行如下命令以啟動 Apply 服務器:asnapply CONTROL_SERVER=TESTRC2 APPLY_QUAL=TESTRC2。注:也可以通過復制中心來啟動 Apply 服務器。本例中使用 TESTRC2 來做控制服務器(CONTROL_SERVER),APPLY_QUAL 參數指配置預訂集時使用的模式。

圖 11. 檢查 Apply 服務器狀態

確認復制功能

向源表中插入數據,按照配置“預訂集”(subscription sets)時配置的時間間隔,確認數據已經被復制到目標表中。

結論

隨著 DB2 功能不斷得到完善和加強,越來越多的客戶選擇使用 DB2 數據庫來存儲其關鍵的業務數據。為了實現組織內部關鍵數據的整合,需要和許多現有的數據庫系統之間共享、同步數據,實現數據整合、業務分離等功能,以支持客戶的業務需求。

本文描述了 DB2 數據庫和 MS SQL Server 數據庫之間數據復制的配置過程。從本文的描述不難看出,基於 DB2 和 WebSphere Replication Server 提供的強大復制功能,用戶可以方便的配置數據復制,並可根據用戶的實際需求實現靈活的定制。這將大大方便用戶,便於客戶實現業務要求。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved