GoldenGateを使用したキャッシュの例
完全なエンドツーエンドの例は、GoldenGateを使用して読取り専用キャッシュを作成する方法を示すのに役立ちます。
この例では、TimesTenデータベースをホストするシステムのFQDNはtthost1.example.com
です。
TimesTenデータベースのDSNはcache1
です。
TimesTen用のGoldenGateデプロイメント・モードは、直接モード接続を使用したオンボックスです。
前提条件
-
機能しているOracle Databaseは最新バージョンです。
-
GoldenGateの最新バージョンがOracleデータベース・ホストにインストールされます。
-
機能しているTimesTenインスタンスはTimesTen 22.1.1.1.0以上を実行しています。
-
GoldenGate 21.3がTimesTenホストにインストールされています。
-
TimesTenキャッシュ・データベースが構成され、作成されています。
-
DatabaseCharacterSet
およびConnectionCharacterSet
がTimesTenデータベースで正しく設定されています。
Oracleユーザーおよびソース表
Oracleアプリケーション・スキーマ所有者はoratt
で、パスワードはttpwd
です。
パスワードttpwd
のOracleキャッシュ管理ユーザーcacheadmin
があり、このユーザーにはキャッシュされる表に対するSELECT
権限があります。アプリケーション・スキーマ・ユーザーとキャッシュ管理ユーザーのパスワードは異なる場合があります。
oratt
ユーザーは、TimesTenにキャッシュされる3つの表を所有しています:
CREATE TABLE customer ( custid VARCHAR2(10) NOT NULL, firstname VARCHAR2(20) NOT NULL, lastname VARCHAR2(20) NOT NULL, address VARCHAR2(128) NOT NULL, phone VARCHAR2(16) NOT NULL, PRIMARY KEY (custid) ); Table created. CREATE TABLE orders ( orderid NUMBER(10,0) NOT NULL, custid VARCHAR2(10) NOT NULL, orderdate DATE NOT NULL, priority CHAR(1), amount NUMBER(12,2) NOT NULL, PRIMARY KEY (orderid), FOREIGN KEY (custid) REFERENCES customer(custid) ); Table created. CREATE TABLE item ( itemno NUMBER(4,0) NOT NULL, orderid NUMBER(10,0) NOT NULL, itemcode VARCHAR2(10) NOT NULL, quantity NUMBER(4,0) NOT NULL, price NUMBER(6,2) NOT NULL, totalvalue NUMBER(10,2) NOT NULL, PRIMARY KEY (orderid,itemno), FOREIGN KEY (orderid) REFERENCES order(orderid) ); Table created. INSERT INTO customer VALUES('C000000001', 'Fred', 'Bloggs', 'Nice Villas, Pleasant Town', '+16072321234'); 1 row inserted. INSERT INTO orders VALUES(123456, 'C000000001', '21/10/2021', 'N', 430.46); 1 row inserted. INSERT INTO item VALUES(1, 123456, 'I000001725', 2, 15.25, 30.50); 1 row inserted. INSERT INTO item VALUES(2, 123456, 'I000207351', 4, 99.99, 399.96); 1 row inserted. COMMIT;
この例は、次のステップを実行します。