create_ignore.sqlユーティリティスクリプトは、DMLトランザクションがターゲットシステムにレプリケートされないようにするために使用します。このスクリプトは、ソースデータベースにSHAREPLEX_IGNORE_TRANSというパブリックプロシージャを作成します。このプロシージャをトランザクションの開始時に実行すると、Captureプロセスは、実行時点から行われるDML操作をトランザクションがコミットまたはロールバックされるまで無視します。そのため、影響を受ける操作は複製されません。
SHAREPLEX_IGNORE_TRANSプロシージャの影響を受けるのはDML操作のみです。SharePlexにTRUNCATEを含むDDL操作をスキップさせることはありません。DDL操作はOracleによって暗黙的にコミットされるため、プロシージャは無効になります。
Unix上のOracle
SharePlexの製品ディレクトリのutilサブディレクトリからcreate_ignore.sqlスクリプトを実行します。プロシージャがSharePlexスキーマに作成されるように、SharePlex Oracleユーザとして実行します。
スクリプトは以下のPL/SQLを実行します。
CREATE OR REPLACE PROCEDURE SHAREPLEX_IGNORE_TRANS AS
TNUM NUMBER;
BEGIN
INSERT INTO SHAREPLEX_TRANS (TRANS_NUM, QUE_SEQ_NO_1, QUE_SEQ_NO_2,
COMBO, OP_TYPE) VALUES (-999,0,0,'DUMMY',0);
DELETE FROM SHAREPLEX_TRANS WHERE TRANS_NUM=-999 AND COMBO='DUMMY'
AND OP_TYPE=0;
END;
/
GRANT EXECUTE ON SHAREPLEX_IGNORE_TRANS TO PUBLIC;
/
SHAREPLEX_IGNORE_TRANSは、レプリケートしたくない操作を含むトランザクションの開始時にのみ呼び出してください。このプロシージャをトランザクションの途中で呼び出すと、プロシージャの開始前にレプリケートされた操作は、postキューに無期限に残り、COMMITを待つことになります。SharePlexはCOMMITがなければメッセージをリリースしないからです。Captureは、プロシージャが呼び出された後のトランザクション内のすべての操作を無視するため、COMMITは到着しません。Readプロセスは、それらのレコードの不要なキャッシュ情報を無期限に保持することになります。
スキップしたいトランザクションの先頭でSHAREPLEX_IGNORE_TRANSプロシージャを実行します。
execute SharePlex_schema.SHAREPLEX_IGNORE_TRANS;
SharePlexがHANAターゲットにレプリケートしているシステム上の現在のレプリケーション状態を削除するには、hana_cleanspユーティリティを使用します。
警告: hana_cleanspの結果は元に戻すことはできません。レプリケーションを初期状態に戻さずに停止するには、abort configコマンド、またはpurge configコマンドを使用できる場合があります。
このユーティリティを使用するには、Korn(ksh)シェルがシステムにインストールされていなければなりません。ユーティリティは処理中にこのシェルを呼び出します。
hana_cleanspは、ターゲットシステムで以下の処理を実行します。
hana_cleanspは以下を保持します。
サポート対象プラットフォーム上のHANA
hana_cleanspを実行するには:
SharePlex製品ディレクトリのbinサブディレクトリから、hana_cleanspユーティリティを以下の構文で実行します。
C:\users\splex\bin>hana_cleansp [port number ] database_name/user_name
ここで:
プロンプトでパスワードを入力します。
Enter the password for the SharePlex User :
「Y」と入力し、このSharePlexインスタンスのクリーンアップを実行することを確認します。
Are you sure you want to perform the clean for '/splex/vardir/var2200' and port 2200? [N] : Y
SQL Serverシステムの現在のレプリケーション状態を削除するには、mss_cleanspユーティリティを使用します。
警告:
|
mss_cleanspは、ターゲットシステムで以下の処理を実行します。
mss_cleanspは以下を保持します。
Microsoft SQL Server
mss_cleanspを実行するには:
SharePlex製品ディレクトリのbinサブディレクトリから、mss_cleanspユーティリティを以下の構文で実行します。
C:\users\splex\bin>mss_cleansp [port number ] database_name/user_name
ここで:
プロンプトでパスワードを入力します。
Enter the password for the SharePlex User :
「Y」と入力し、このSharePlexインスタンスのクリーンアップを実行することを確認します。
Are you sure you want to perform the clean for 'C:\splex\vardir\var2200' and port 2200? [N] :Y
MySQLシステムの現在のレプリケーション状態を削除するには、mysql_cleanspユーティリティを使用します。
警告: mysql_cleanspを実行することは、テスト環境やデモ環境では許容できますが、本番環境ではほとんど適切とは言えません。クリーンアップの結果は元に戻すことができません。
このユーティリティを使用するには、Korn(ksh)シェルがシステムにインストールされていなければなりません。ユーティリティは処理中にこのシェルを呼び出します。
mysql_cleanspは、ターゲットシステムで以下の処理を実行します。
mysql_cleanspは以下を保持します。
サポート対象のUNIXプラットフォーム上のMySQL
mysql_cleanspを実行するには:
SharePlex製品ディレクトリのbinサブディレクトリから、mysql_cleanspユーティリティを以下の構文で実行します。
C:\users\splex\bin> mysql_cleansp [port number ] database_name/user_name
ここで:
プロンプトでパスワードを入力します。
Enter the password for the SharePlex User :
「Y」と入力し、このSharePlexインスタンスのクリーンアップを実行することを確認します。
Are you sure you want to perform the clean for '/splex/vardir/var2200' and port 2200? [N] : Y
© ALL RIGHTS RESERVED. 利用規約 プライバシー Cookie Preference Center