ホームページ データベース 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 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

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では、除算演算は一般的な数学演算の1つです。データのクエリと処理中に、除算演算はフィールド間の比率を計算したり、特定の値間の論理関係を導出したりするのに役立ちます。この記事では、OracleSQL での除算演算の使用法を紹介し、具体的なコード例を示します。 1. OracleSQL における除算演算の 2 つの方法 OracleSQL では、除算演算を 2 つの異なる方法で実行できます。

Oracle と DB2 の SQL 構文の比較と相違点 Oracle と DB2 の SQL 構文の比較と相違点 Mar 11, 2024 pm 12:09 PM

Oracle と DB2 は一般的に使用される 2 つのリレーショナル データベース管理システムであり、それぞれに独自の SQL 構文と特性があります。この記事では、Oracle と DB2 の SQL 構文を比較し、相違点を示し、具体的なコード例を示します。データベース接続 Oracle では、次のステートメントを使用してデータベースに接続します: CONNECTusername/password@database DB2 では、データベースに接続するステートメントは次のとおりです: CONNECTTOdataba

Huawei 携帯電話にデュアル WeChat ログインを実装するにはどうすればよいですか? Huawei 携帯電話にデュアル WeChat ログインを実装するにはどうすればよいですか? Mar 24, 2024 am 11:27 AM

Huawei 携帯電話にデュアル WeChat ログインを実装するにはどうすればよいですか?ソーシャルメディアの台頭により、WeChatは人々の日常生活に欠かせないコミュニケーションツールの1つになりました。ただし、多くの人は、同じ携帯電話で同時に複数の WeChat アカウントにログインするという問題に遭遇する可能性があります。 Huawei 社の携帯電話ユーザーにとって、WeChat の二重ログインを実現することは難しくありませんが、この記事では Huawei 社の携帯電話で WeChat の二重ログインを実現する方法を紹介します。まず第一に、ファーウェイの携帯電話に付属するEMUIシステムは、デュアルアプリケーションを開くという非常に便利な機能を提供します。アプリケーションのデュアルオープン機能により、ユーザーは同時に

MyBatis動的SQLタグのSetタグ機能の詳細説明 MyBatis動的SQLタグのSetタグ機能の詳細説明 Feb 26, 2024 pm 07:48 PM

MyBatis 動的 SQL タグの解釈: Set タグの使用法の詳細な説明 MyBatis は、豊富な動的 SQL タグを提供し、データベース操作ステートメントを柔軟に構築できる優れた永続層フレームワークです。このうち、Set タグは、UPDATE ステートメントで SET 句を生成するために使用され、更新操作でよく使用されます。この記事では、MyBatis での Set タグの使用法を詳細に説明し、特定のコード例を通じてその機能を示します。 SetタグとはMyBatiで使用するSetタグです。

SQL の 5120 エラーを解決する方法 SQL の 5120 エラーを解決する方法 Mar 06, 2024 pm 04:33 PM

解決策: 1. ログインしているユーザーがデータベースにアクセスまたは操作するための十分な権限を持っているかどうかを確認し、ユーザーが正しい権限を持っているかどうかを確認します; 2. SQL Server サービスのアカウントに指定されたファイルまたはデータベースにアクセスする権限があるかどうかを確認します。 3. 指定されたデータベース ファイルが他のプロセスによって開かれているかロックされているかどうかを確認し、ファイルを閉じるか解放して、クエリを再実行します。管理者として試してください。Management Studio をなどとして実行します。

Windows サーバーのバックアップをインストール、アンインストール、リセットする方法 Windows サーバーのバックアップをインストール、アンインストール、リセットする方法 Mar 06, 2024 am 10:37 AM

WindowsServerBackup は、WindowsServer オペレーティング システムに付属する機能で、ユーザーが重要なデータとシステム構成を保護し、中小企業、エンタープライズ レベルの企業に完全なバックアップおよび回復ソリューションを提供できるように設計されています。この機能を使用できるのは、Server2022 以降を実行しているユーザーのみです。この記事では、WindowsServerBackup のインストール、アンインストール、またはリセットの方法を説明します。 Windows Server バックアップをリセットする方法 サーバー バックアップで問題が発生したり、バックアップに時間がかかりすぎたり、保存されているファイルにアクセスできない場合は、Windows Server バックアップ設定をリセットすることを検討してください。 Windowsをリセットするには

PHP プログラミング ガイド: フィボナッチ数列を実装する方法 PHP プログラミング ガイド: フィボナッチ数列を実装する方法 Mar 20, 2024 pm 04:54 PM

プログラミング言語 PHP は、さまざまなプログラミング ロジックやアルゴリズムをサポートできる、Web 開発用の強力なツールです。その中でも、フィボナッチ数列の実装は、一般的で古典的なプログラミングの問題です。この記事では、PHP プログラミング言語を使用してフィボナッチ数列を実装する方法を、具体的なコード例を添付して紹介します。フィボナッチ数列は、次のように定義される数学的数列です。数列の最初と 2 番目の要素は 1 で、3 番目の要素以降、各要素の値は前の 2 つの要素の合計に等しくなります。シーケンスの最初のいくつかの要素

See all articles