首頁 資料庫 mysql教程 在SQL Server 2012中实现CDC for Oracle

在SQL Server 2012中实现CDC for Oracle

Jun 07, 2016 pm 03:01 PM
cdc for server sql 實現

在上篇在SSIS 2012中使用CDC(数据变更捕获) 中, 介绍了如何在SSIS 2012中使用CDC,本文在此基础上介绍,如何通过Attunity提供的 Change Data Capture Designer for Oracle 实现对Oracle数据表的变更捕获。同样需要做一些准备工作: 1、配置Oracle数据库为

在上篇在SSIS 2012中使用CDC(数据变更捕获)中,介绍了如何在SSIS 2012中使用CDC,本文在此基础上介绍,如何通过Attunity提供的Change Data Capture Designer for Oracle实现对Oracle数据表的变更捕获。同样需要做一些准备工作:

1、配置Oracle数据库为归档模式,并获取浏览日志的指定权限;


<pre class="brush:php;toolbar:false">/* -- ============================================= -- 修改Oracle属性 ---Generate By downmoon(邀月),3w@live.cn -- ============================================= */ 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中实现CDC for Oracle

注意:如果您的SQL Server 2012是64位,必须选择64位安装源,而如果你用的Oracle客户端是32位,那么麻烦在后面,呵呵。

 

正面相对就比较简单了,两步即可:

第一步:配置 CDC for Oracle 服务

在开始-Attunity Change Data Capture for Oracle>CDC Service Configuration,打开服务配置控制台:

prepare 一个本地的SQL Server实例,用于记录远程Oracle表的变化,如果你没有先Prepare数据库,系统会相当人性化的给出提示,完成后也是如此。

在SQL Server 2012中实现CDC for Oracle

在SQL Server 2012中实现CDC for Oracle

在SQL Server 2012中实现CDC for Oracle

 

配置服务比较简单,最终如下图,注意:最后一行的Master Key用于加密存储的Oracle凭证。

 

在SQL Server 2012中实现CDC for Oracle

至此,第一步服务配置完成,简单,是不?

第二步:设计 CDC for Oracle

在开始-Attunity Change Data Capture for Oracle>CDC Designer Configuration,打开设计配置控制台:

创建一个新实例,首先创建一个CDC Database名称为Oracle_CDC,这个位于SQL Server端,运行它即可。

下来,连接Oracle Source

在SQL Server 2012中实现CDC for Oracle

出现上述情况,是因为我别的应用程序需要安装了一个Oracle 32位客户端,于是,悲剧出现了。

补救措施:安装一个绿色的Oracle 64位客户端:http://www.oracle.com/technetwork/topics/winx64soft-089540.html

下载,直接解压即可,本文中的Path路径有两个:

E:\Ora11\product\11.2.0\dbhome_1\bin;(Path路径中原32位客户端安装版路径)
E:\Ora11\Client12;E:\Ora11\product\11.2.0\dbhome_1\bin;(Path路径中现64位客户端绿色版路径,修改后)

然后重新在上述界面“Test connection”,成功!

在SQL Server 2012中实现CDC for Oracle

你可以提前在Oracle中新建一个表,用于测试:

<pre class="brush:php;toolbar:false">/* -- ============================================= 
-- 修改Oracle属性
---Generate By downmoon(邀月),3w@live.cn 
-- ============================================= */
登入後複製
-- Create tableCreate table CDCTest01( TCode VARCHAR2(20) primary Key, TName VARCHAR2(500));Insert into CDCTest01select '1','阳顶天' from dualunion allselect '2','张三丰' from dual;

创建后,你可以在后面一步,选中要捕获的表:

在SQL Server 2012中实现CDC for Oracle

执行关于表的一些必要操作:

在SQL Server 2012中实现CDC for Oracle

如果你没有做本文前的准备工作,将会收到如下错误:

在SQL Server 2012中实现CDC for Oracle

补救措施后,如下:

在SQL Server 2012中实现CDC for Oracle

下一步,设计完成。

你可以试着启动一下这个windows服务,十之八九第一次会收到这个错误:

在SQL Server 2012中实现CDC for Oracle

其实,这是因为本机配置的64位客户端在注册表中存错了位置,修改为64位绿色客户端位置即可,原值为32位安装版的路径。

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

修改后无需重启,重新Start服务,OK

在SQL Server 2012中实现CDC for Oracle

我们添加两个语句测试一下:

/* -- ============================================= 
-- 创建测试数据
---Generate By downmoon(邀月),3w@live.cn 
-- ============================================= */

Insert into CDCTest01 select '3','金毛狮王' from dual;
update CDCTest01 set TName='觉远' where TCode='1';
登入後複製

在SQL Server 2012中实现CDC for Oracle

SQL Server端自动生成的表:

在SQL Server 2012中实现CDC for Oracle

感谢您的阅读,希望对你有所帮助!


本文参考:

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



助人等于自助!   3w@live.cn


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1246
24
Hibernate 框架中 HQL 和 SQL 的差異是什麼? Hibernate 框架中 HQL 和 SQL 的差異是什麼? Apr 17, 2024 pm 02:57 PM

HQL和SQL在Hibernate框架中進行比較:HQL(1.物件導向語法,2.資料庫無關的查詢,3.類型安全),而SQL直接操作資料庫(1.與資料庫無關的標準,2.可執行複雜查詢和資料操作)。

Oracle SQL中除法運算的用法 Oracle SQL中除法運算的用法 Mar 10, 2024 pm 03:06 PM

《OracleSQL中除法運算的用法》在OracleSQL中,除法運算是常見的數學運算之一。在資料查詢和處理過程中,除法運算可以幫助我們計算欄位之間的比例或得出特定數值的邏輯關係。本文將介紹OracleSQL中除法運算的用法,並提供具體的程式碼範例。一、OracleSQL中除法運算的兩種方式在OracleSQL中,除法運算可以用兩種不同的方式來進行

Oracle與DB2的SQL語法比較與區別 Oracle與DB2的SQL語法比較與區別 Mar 11, 2024 pm 12:09 PM

Oracle和DB2是兩個常用的關聯式資料庫管理系統,它們都有自己獨特的SQL語法和特性。本文將針對Oracle和DB2的SQL語法進行比較與區別,並提供具體的程式碼範例。資料庫連接在Oracle中,使用以下語句連接資料庫:CONNECTusername/password@database而在DB2中,連接資料庫的語句如下:CONNECTTOdataba

華為手機如何實現雙微信登入? 華為手機如何實現雙微信登入? Mar 24, 2024 am 11:27 AM

華為手機如何實現雙微信登入?隨著社群媒體的興起,微信已成為人們日常生活中不可或缺的溝通工具之一。然而,許多人可能會遇到一個問題:在同一部手機上同時登入多個微信帳號。對於華為手機用戶來說,實現雙微信登入並不困難,本文將介紹華為手機如何實現雙微信登入的方法。首先,華為手機自帶的EMUI系統提供了一個很方便的功能-應用程式雙開。透過應用程式雙開功能,用戶可以在手機上同

如何安裝、解除安裝、重設Windows伺服器備份 如何安裝、解除安裝、重設Windows伺服器備份 Mar 06, 2024 am 10:37 AM

WindowsServerBackup是WindowsServer作業系統自帶的功能,旨在協助使用者保護重要資料和系統配置,並為中小型和企業級企業提供完整的備份和復原解決方案。只有執行Server2022及更高版本的使用者才能使用此功能。在本文中,我們將介紹如何安裝、解除安裝或重設WindowsServerBackup。如何重置Windows伺服器備份如果您的伺服器備份遇到問題,備份所需時間過長,或無法存取已儲存的文件,那麼您可以考慮重新設定WindowsServer備份設定。要重設Windows

PHP程式設計指南:實作斐波那契數列的方法 PHP程式設計指南:實作斐波那契數列的方法 Mar 20, 2024 pm 04:54 PM

程式語言PHP是一種用於Web開發的強大工具,能夠支援多種不同的程式設計邏輯和演算法。其中,實作斐波那契數列是一個常見且經典的程式設計問題。在這篇文章中,將介紹如何使用PHP程式語言來實作斐波那契數列的方法,並附上具體的程式碼範例。斐波那契數列是一個數學上的序列,其定義如下:數列的第一個和第二個元素為1,從第三個元素開始,每個元素的值等於前兩個元素的和。數列的前幾元

SQL出現5120錯誤怎麼解決 SQL出現5120錯誤怎麼解決 Mar 06, 2024 pm 04:33 PM

解決方法:1、檢查登入使用者是否具有足夠的權限來存取或操作該資料庫,確保該使用者俱有正確的權限;2、檢查SQL Server服務的帳戶是否具有存取指定檔案或資料夾的權限,確保該帳戶具有足夠的權限來讀取和寫入該文件或資料夾;3、檢查指定的資料庫文件是否已被其他進程打開或鎖定,嘗試關閉或釋放該文件,並重新運行查詢;4、嘗試以管理員身份運行Management Studio等等。

如何在華為手機上實現微信分身功能 如何在華為手機上實現微信分身功能 Mar 24, 2024 pm 06:03 PM

如何在華為手機上實現微信分身功能隨著社群軟體的普及和人們對隱私安全的日益重視,微信分身功能逐漸成為人們關注的焦點。微信分身功能可以幫助使用者在同一台手機上同時登入多個微信帳號,方便管理和使用。在華為手機上實現微信分身功能並不困難,只需要按照以下步驟操作即可。第一步:確保手機系統版本和微信版本符合要求首先,確保你的華為手機系統版本已更新至最新版本,以及微信App

See all articles