在SQL Server 2012中實現CDC for Oracle

來源:互聯網
上載者:User

標籤:安裝檔案   generate   net   t-sql   load   ref   down   title   vfp   

在上篇在SSIS 2012中使用CDC(資料變更捕獲)中,介紹了怎樣在SSIS 2012中使用CDC,本文在此基礎上介紹。怎樣通過Attunity提供的Change Data Capture Designer for Oracle實現對Oracle資料表的變更捕獲。

相同須要做一些準備工作:

1、配置Oracle資料庫為歸檔模式。並擷取瀏覽日誌的指定許可權。


/* -- ============================================= -- 改動Oracle屬性---Generate By downmoon(邀月),[email protected] -- ============================================= */ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;ALTER DATABASE ARCHIVELOG;

2、安裝CDC Service Configuration and Designer 兩個控制台。

在SQL Server的安裝源\Tools\AttunityCDCOracle\x64\1033下有兩個安裝檔案,32位相應的路徑為X86,1033為英語,2052為中文簡體。

D:\Tools\AttunityCDCOracle\x64\1033\AttunityOracleCdcDesigner.msi
D:\Tools\AttunityCDCOracle\x64\1033\AttunityOracleCdcService.msi
D:\Tools\AttunityCDCOracle\x86\1033\AttunityOracleCdcDesigner.msi
D:\Tools\AttunityCDCOracle\x86\1033\AttunityOracleCdcService.msi

安裝的詳細方法,請參考:

http://social.technet.microsoft.com/wiki/contents/articles/7647.installing-microsoft-sql-server-2012-change-data-capture-for-oracle-by-attunity.aspx

雙擊MSI就可以安裝。預設安裝路徑。64位在這裡:C:\Program Files\Change Data Capture for Oracle by Attunity

假設沒有安裝源。能夠在官網下載:http://www.microsoft.com/en-us/download/details.aspx?id=35580

注意:假設您的SQL Server 2012是64位,必須選擇64位安裝源,而假設你用的Oracleclient是32位,那麼麻煩在後面。呵呵。

 

正面相對就比較簡單了。兩步就可以:

第一步:配置 CDC for Oracle 服務

在開始-Attunity Change Data Capture for Oracle>CDC Service Configuration,開啟服務配置控制台:

prepare 一個本地的SQL Server執行個體。用於記錄遠程Oracle表的變化,假設你沒有先Prepare資料庫,系統會相當人性化的給出提示,完畢後也是如此。

 

佈建服務比較簡單,終於例如以,注意:最後一行的Master Key用於加密儲存的Oracle憑證。

 

至此,第一步服務配置完畢,簡單,是不?

第二步:設計 CDC for Oracle

在開始-Attunity Change Data Capture for Oracle>CDC Designer Configuration。開啟設計配置控制台:

建立一個新執行個體,首先建立一個CDC Database名稱為Oracle_CDC,這個位於SQL Server端。執行它就可以。

下來。串連Oracle Source

出現上述情況。是由於我別的應用程式須要安裝了一個Oracle 32位client,於是,悲劇出現了。

補救措施:安裝一個綠色的Oracle 64位client:http://www.oracle.com/technetwork/topics/winx64soft-089540.html

下載,直接解壓就可以,本文中的Path路徑有兩個:

E:\Ora11\product\11.2.0\dbhome_1\bin;(Path路徑中原32位client安裝版路徑)
E:\Ora11\Client12;E:\Ora11\product\11.2.0\dbhome_1\bin;(Path路徑中現64位client綠色版路徑,改動後)

然後又一次在上述介面“Test connection”,成功!

你能夠提前在Oracle中建立一個表,用於測試:

/* -- ============================================= -- 改動Oracle屬性---Generate By downmoon(邀月),[email protected] -- ============================================= */
-- Create tableCreate table CDCTest01( TCode VARCHAR2(20) primary Key, TName VARCHAR2(500));Insert into CDCTest01select ‘1‘,‘陽頂天‘ from dualunion allselect ‘2‘,‘張三丰‘ from dual;

建立後。你能夠在後面一步,選中要捕獲的表:

執行關於表的一些必要操作:

假設你沒有做本文前的準備工作。將會收到例如以下錯誤:

補救措施後,例如以下:

下一步,設計完畢。

你能夠試著啟動一下這個windows服務,十之八九第一次會收到這個錯誤:

事實上,這是由於本機配置的64位client在注冊表中存錯了位置,改動為64位綠色client位置就可以。原值為32位安裝版的路徑。

[HKEY_LOCAL_MACHINE\SOFTWARE\Oracle]
"Oracle_Home"="E:\\Ora11\\Client12"

改動後無需重新啟動,又一次Start服務,OK

我們加入兩個語句測試一下:

/* -- ============================================= -- 建立測試資料---Generate By downmoon(邀月),[email protected] -- ============================================= */Insert into CDCTest01 select ‘3‘,‘金毛獅王‘ from dual;update CDCTest01 set TName=‘覺遠‘ where TCode=‘1‘;

psid=1" alt="邀月工作室" height="417" width="726" />

SQL Server端自己主動產生的表:

感謝您的閱讀。希望對你有所協助。


本文參考:

id=35580%20%20http://msdn.microsoft.com/zh-cn/library/dn175414%28v=sql.120%29.aspx%20%20http://www.oracle.com/technetwork/topics/winx64soft-089540.html%20%20http://technet.microsoft.com/en-us/library/ee470675%28v=sql.100%29.aspx%20http://blogs.msdn.com/b/mattm/archive/2012/03/26/cdc-for-oracle-in-sql-server-2012.aspx%20%20%20http://www.attunity.com/forums/microsoft-ssis-oracle-connector/error-failed-load-oci-dll-1308.html">http://www.attunity.com/products/attunity-cdc-ssis/oracle-cdc-for-ssis
http://www.microsoft.com/en-us/download/confirmation.aspx?id=35580
http://msdn.microsoft.com/zh-cn/library/dn175414%28v=sql.120%29.aspx
http://www.oracle.com/technetwork/topics/winx64soft-089540.html
http://technet.microsoft.com/en-us/library/ee470675%28v=sql.100%29.aspx
http://blogs.msdn.com/b/mattm/archive/2012/03/26/cdc-for-oracle-in-sql-server-2012.aspx
http://www.attunity.com/forums/microsoft-ssis-oracle-connector/error-failed-load-oci-dll-1308.html


邀月註:本文著作權由邀月和CSDN共同全部。轉載請註明出處。
助人等於自助!   [email protected]


在SQL Server 2012中實現CDC for Oracle

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.