ALTER REPLICATION文では、レプリケーション要素の追加、変更、削除を行い、関連するデータ・ストアのレプリケーション属性を変更します。
ほとんどのALTER REPLICATIONの処理は、レプリケーション・エージェントが停止している場合(ttAdmin -repStop
)にのみサポートされます。ただし、レプリケーション・エージェントの実行中にサブスクライバ・データ・ストアをレプリケーション・スキームに追加することは可能です。詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のレプリケーションの変更に関する項を参照してください。
TimesTenインスタンスでアクセス制御が有効な場合、この文にはADMIN権限が必要です。
ALTER REPLICATION文の構文は、次のとおりです。
ALTER REPLICATION [Owner.]ReplicationSchemeName
ElementOperation [...] | StoreOperation |
NetworkOperation [...]
ElementOperationを1回以上指定します。
ADD ELEMENT ElementName
{DATASTORE | {TABLE [Owner.]TableName [CheckConflicts]} |
SEQUENCE [Owner.]SequenceName}
{ MASTER | PROPAGATOR } FullStoreName
{ SUBSCRIBER FullStoreName [, ... ]
[ReturnServiceAttribute] } [ ... ] }
{ INCLUDE | EXCLUDE }{TABLE [Owner.]TableName |
CACHE GROUP [Owner.]CacheGroupName|
SEQUENCE [Owner.]SequenceName}[,...]
ALTER ELEMENT { ElementName | * IN FullStoreName]
ADD SUBSCRIBER FullStoreName [,...[ReturnServiceAttribute] |
ALTER SUBSCRIBER FullStoreName [, ...] |
SET [ReturnServiceAttribute] |
DROP SUBSCRIBER FullStoreName [, ... ]
ALTER ELEMENT * IN FullStoreName
SET { MASTER | PROPAGATOR } FullStoreName
ALTER ELEMENT ElementName
{SET NAME NewElementName | SET CheckConflicts}
ALTER ELEMENT ElementName
{ INCLUDE | EXCLUDE }{TABLE [Owner.]TableName |
CACHE GROUP [Owner.]CacheGroupName |
SEQUENCE [Owner.]SequenceName}[,...]
DROP ELEMENT { ElementName | * IN FullStoreName }
CheckConflictsは、TABLE要素をレプリケートした場合にのみ設定できます。構文の詳細は、「CHECK CONFLICTS」を参照してください。
ReturnServiceAttributeの構文は、次のとおりです。
{ RETURN RECEIPT [BY REQUEST] | NO RETURN }
StoreOperation句:
ADD STORE FullStoreName [StoreAttribute [... ]]
ALTER STORE FullStoreName SET StoreAttribute [... ]
StoreAttributeの構文は、次のとおりです。
[DISABLE RETURN {SUBSCRIBER | ALL} NumFailures |
RETURN SERVICES {ON | OFF} WHEN [REPLICATION] STOPPED |
DURABLE COMMIT {ON | OFF} |
RESUME RETURN MilliSeconds |
LOCAL COMMIT ACTION {NO ACTION| COMMIT} |
RETURN WAIT TIME Seconds |
COMPRESS TRAFFIC {ON | OFF} |
PORT PortNumber |
TIMEOUT Seconds |
FAILTHRESHOLD Value]
NetworkOperationを1回以上指定します。
ADD ROUTE MASTER FullStoreName SUBSCRIBER FullStoreName
{ { MASTERIP MasterHost | SUBSCRIBERIP SubscriberHost }
PRIORITY Priority } [...]
DROP ROUTE MASTER FullStoreName SUBSCRIBER FullStoreName
{ MASTERIP MasterHost | SUBSCRIBERIP SubscriberHost } [...]
ALTER REPLICATION文には、次のパラメータがあります。
パラメータ | 説明 |
[Owner.]ReplicationSchemeName | レプリケーション・スキームに割り当てられた名前です。 |
ADD ELEMENT ElementName | 新しいELEMENTを既存のレプリケーション・スキームに追加します。ElementNameは、30文字以下の識別子です。DATASTORE要素を使用する場合、ElementNameの最初の20字を、他のDATASTORE要素名に対して一意にする必要があります。 ELEMENTがDATASTOREの場合、すべての表とキャッシュ・グループがデータ・ストアに含まれます。データ・ストアの一部にSEQUENCE要素が含まれる場合、その要素のRETURNサービスはこの文では変更されません。 |
ADD ELEMENT ElementName DATASTORE {INCLUDE | EXCLUDE} {TABLE [Owner.]TableName | CACHE GROUP [Owner.]CacheGroupName | SEQUENCE [Owner.]SequenceName} [,...] |
新しいDATASTORE ELEMENTを既存のレプリケーション・スキームに追加します。ElementNameは、30文字以下の識別子です。DATASTORE要素を使用する場合、ElementNameの最初の20字を、他のDATASTORE要素名に対して一意にする必要があります。 INCLUDEは、指定された表とキャッシュ・グループのみをデータ・ストアに含めます。INCLUDE句は、オブジェクト型(表、キャッシュ・グループまたは順序)ごとに1つ使用します。 EXCLUDEは、指定された表、キャッシュ・グループおよび順序を除外して、すべての表とキャッシュ・グループをデータ・ストアに含めます。EXCLUDE句は、オブジェクト型(表、キャッシュ・グループまたは順序)ごとに1つ使用します。 要素が順序の場合、RETURN属性は適用されず、競合チェックはサポートされません。また、循環する順序はエラーを返します。 |
ADD SUBSCRIBER FullStoreName | 追加のサブスクライバ・データ・ストアを指定します。FullStoreNameは、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名です。 |
ALTER ELEMENT * IN FullStoreName | FullStoreNameがMASTERまたはPROPAGATORであるすべての要素を変更します。FullStoreNameは、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名です。 この構文を使用して一連の要素名に、次の操作を実行できます。
変更するデータ・ストアにSEQUENCE要素が含まれる場合、その要素のRETURNサービスはこの文では変更されません。 |
ALTER ELEMENT ElementName | サブスクライバが追加または削除される要素の名前です。 |
ALTER ELEMENT ElementName1 SET NAME ElementName2 | ElementName1をElementName2の名前に変更します。TABLE型の要素の名前のみを変更できます。 |
ALTER ELEMENT ElementName DATASTORE { INCLUDE | EXCLUDE } {TABLE [Owner.]TableName | CACHE GROUP [Owner.]CacheGroupName | SEQUENCE [Owner.]SequenceName} [,...] |
既存のデータ・ストア要素の表やキャッシュ・グループを追加または削除します。 INCLUDEは、指定された表とキャッシュ・グループをデータ・ストアに追加します。INCLUDE句は、オブジェクト型(表またはキャッシュ・グループ)ごとに1つ使用します。 EXCLUDEは、指定された表とキャッシュ・グループをデータ・ストアから削除します。EXCLUDE句は、オブジェクト型(表、キャッシュ・グループまたは順序)ごとに1つ使用します。 要素が順序の場合、RETURN属性は適用されず、競合チェックはサポートされません。また、循環する順序はエラーを返します。 |
ALTER SUBSCRIBER FullStoreName SET RETURN RECEIPT [BY REQUEST] | NO RETURN | RETURN RECEIPTサービスを有効化、無効化または変更するように、サブスクライバ・データ・ストアを変更します。FullStoreNameは、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名です。 |
CheckConflicts | データ・ストア間でTABLE要素を双方向にレプリケートするための同時書込みで、レプリケーションの競合をチェックします。DATASTORE型の要素をレプリケートする場合は、競合をチェックできません。「CHECK CONFLICTS」を参照してください。 |
COMPRESS TRAFFIC {ON | OFF} | レプリケートされた通信量を圧縮して、ネットワークの帯域幅の量を削減します。ONは、STOREで定義されたデータ・ストアに対してレプリケートされた通信量をすべて圧縮するように指定します。OFF(デフォルト)は、通信量を圧縮しないように指定します。詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のレプリケートされた通信量の圧縮に関する項を参照してください。 |
DISABLE RETURN {SUBSCRIBER | ALL} NumFailures | NumFailuresで指定されているタイムアウト回数を経過した後、RETURNサービスのブロッキングを無効にするようにRETURNサービス障害ポリシーを設定します。SUBSCRIBERを選択すると、レプリケートされた更新を、指定されているタイムアウト期間内に確認できなかったサブスクライバのみにこのポリシーが適用されます。ALLを選択すると、いずれかのサブスクライバから応答がなかった場合、すべてのサブスクライバにこのポリシーが適用されます。この障害ポリシーは、RETURN RECEIPTまたはRETURN TWOSAFEサービスのいずれかで指定できます。
詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のRETURNサービスのタイムアウト・エラーおよびレプリケーション状態の変更の管理に関する項を参照してください。 |
DURABLE COMMIT {ON | OFF} | DISABLE RETURNによりRETURNサービスのブロッキングが無効になった場合、データ・ストアのDurableCommits設定を上書きし、永続コミットを有効にします。 |
DROP ELEMENT * IN FullStoreName | FullStoreNameがMASTERであるすべての要素のレプリケーションの記述を削除します。FullStoreNameは、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名です。 |
DROP ELEMENT ElementName | ElementNameのレプリケーションの記述を削除します。 |
DROP SUBSCRIBER FullStoreName | 指定したサブスクライバ・データ・ストアに更新が送信されないように指定します。この処理は、レプリケーション・スキームの持つサブスクライバが1つのみの場合に失敗します。FullStoreNameは、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名です。 |
FAILTHRESHOLD Value | サブスクライバ・データ・ストアに累積できるログ・ファイルの数。この値を超えると、サブスクライバはFailedの状態に設定されます。
値0は、制限がないことを示します。この値がデフォルトです。 詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のレプリケートされたデータ・ストアのログの管理に関する項を参照してください。 |
FullStoreName |
次のいずれかとして指定されるデータ・ストアです。 たとえば、データ・ストアのパスが この名前は、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名で、オプションでホストIDを次の書式で指定できます。 DataStoreName [ON Host] HostにはIPアドレスまたは1つ以上のIPアドレスに割り当てられたリテラルのホスト名を指定できます。ホスト名に特殊文字が含まれている場合、"MyHost-500"のように二重引用符で囲む必要があります。(『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のホストIPアドレスの構成に関する項を参照してください。) |
LOCAL COMMIT ACTION {NO ACTION | COMMIT} | タイムアウトした場合にRETURN TWOSAFEトランザクションで実行されるデフォルトのアクションを指定します。 NO ACTION: タイムアウト時、コミット関数がアプリケーションに戻り、トランザクションはコミット・コールに入ったときと同じ状態のままになります。ただし、アプリケーションがレプリケートされた表を更新できない場合を除きます。アプリケーションはコミットの再発行のみを行うことができます。トランザクションはロールバックされない場合があります。この設定はデフォルトです。 COMMIT: タイムアウト時に、コミット関数がCOMMITをログ・レコードに書き込み、トランザクションをローカルで終了します。同じトランザクション上でこれ以上の処理を行うことはできません。 localActionパラメータを指定してttRepSyncSetプロシージャをコールすることで、特定のトランザクションに対してこの設定を無効にすることができます。 |
MASTER FullStoreName | 指定されたELEMENTがアプリケーションで更新されるデータ・ストアです。MASTERデータ・ストアによって、更新がSUBSCRIBERデータ・ストアに送信されます。FullStoreNameは、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名です。 |
NO RETURN | RETURNサービスを使用しないように指定します。この設定がデフォルトです。 RETURNサービスの使用の詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のRETURNサービスの使用に関する項を参照してください。 |
PORT PortNumber |
このデータ・ストアのレプリケーション・エージェントが接続をリスニングするTCP/IPポート番号です。指定しない場合は、レプリケーション・エージェントによってポート番号が自動的に割り当てられます。 相互にレプリケートするすべてのTimesTenデータ・ストアで、同じポート番号を使用する必要があります。 |
PROPAGATOR FullStoreName | レプリケートされた更新を受け取り、他のデータ・ストアに渡すデータ・ストアです。 |
RESUME RETURN MilliSeconds | DISABLE RETURNによってRETURNサービスのブロッキングが無効になった場合、この属性によって、RETURNサービスのブロッキングを再度有効にするタイミングに関するポリシーを設定します。RETURNサービスのブロッキングは、障害が発生したサブスクライバが、MilliSecondsで指定された時間よりも短い間隔でレプリケートされた更新を確認するとすぐに有効になります。 |
RETURN RECEIPT [BY REQUEST] |
RETURN RECEIPTサービスを有効にします。これによって、マスター・データ・ストアに対してトランザクションをコミットするアプリケーションは、すべてのサブスクライバがトランザクションを受信するまでブロックされます。 RETURN RECEIPTにより、すべてのトランザクションにサービスが適用されます。RETURN RECEIPT BY REQUESTを指定した場合は、ttRepSyncSet()プロシージャを使用して、選択したトランザクションに対してRETURN RECIPTサービスを有効にできます。RETURNサービスの使用の詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のRETURNサービスの使用に関する項を参照してください。 |
RETURN SERVICES {ON | OFF} WHEN [REPLICATION] STOPPED |
レプリケーション・エージェントが停止または一時停止の状態の場合に、RETURNサービスのブロッキングが有効または無効のいずれかになるように、RETURNサービス障害ポリシーを設定します。 OFFは、RETURN RECEIPTサービスを使用する場合のデフォルトです。ONは、RETURN TWOSAFEサービスを使用する場合のデフォルトです。 詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のRETURNサービスのタイムアウト・エラーおよびレプリケーション状態の変更の管理に関する項を参照してください。 |
RETURN TWOSAFE [BY REQUEST] |
RETURN TWOSAFEサービスを有効にします。これによって、マスター・データ・ストアに対してトランザクションをコミットするアプリケーションは、すべてのサブスクライバがトランザクションをコミットするまでブロックされます。 RETURN TWOSAFEにより、すべてのトランザクションにサービスが適用されます。RETURN TWOSAFE BY REQUESTを指定した場合は、ttRepSyncSetプロシージャを使用して、選択したトランザクションに対してRETURN RECIPTサービスを有効にできます。RETURNサービスの使用の詳細は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のRETURNサービスの使用に関する項を参照してください。 |
RETURN WAIT TIME Seconds | RETUENサービスの応答を待機する時間(秒)を指定します。デフォルト値は10秒です。値'0'は待機時間がないことを意味します。ttRepSyncSetプロシージャにreturnWaitパラメータを設定してアプリケーションからコールすることによって、このタイムアウト設定を上書きできます。 |
SET { MASTER | PROPAGATOR } | 任意のデータ・ストアを任意の要素のMASTERまたはPROPAGATORに設定します。FullStoreNameは、データ・ストアのファイルの基本名である必要があります。 |
SUBSCRIBER FullStoreName | MASTERデータ・ストアから更新を受け取るデータ・ストアです。FullStoreName は、DSNの記述のDataStore属性で指定されるデータ・ストア・ファイル名です。 |
TIMEOUT Seconds | メッセージを再送信する前に、データ・ストアが別のデータ・ストアからの応答を待機する時間です。デフォルト値は120秒です。 |
ADD ROUTE MASTER FullStoreName SUBSCRIBER FullStoreName |
NetworkOperationをレプリケーション・スキームに追加します。各サブスクライバ・ストアへのすべてのアウトバウンド接続に対してマスター・ストアが使用するネットワーク・インタフェースを制御できます。 複数回指定できます。 |
DROP ROUTE MASTER FullStoreName SUBSCRIBER FullStoreName |
レプリケーション・スキームからNetworkOperationを削除します。 複数回指定できます。 |
MASTERIP MasterHost | SUBSCRIBERIP SubscriberHost |
MasterHostおよびSubscriberHostは、マスターおよびサブスクライバ・ストアのネットワーク・インタフェースのIPアドレスです。IPV6のドット表記または正規形式で指定するか、あるいはコロン表記で指定します。 句は複数回指定できます。ADDおよびDROP ROUTE MASTERの両方に対して有効です。 |
PRIORITY Priority | 1から99の整数で表される変数。IPアドレスの優先度を示します。整数値が小さいほど、優先度は高くなります。同じ優先度を持つアドレスが複数指定されている場合は、エラーが返されます。ピア接続の確立に使用する複数のIPアドレスの順序を制御します。 NetworkOperation句の構文で必須です。MASTERIP MasterHost | SUBSCRIBERIP SubscriberHost句の後ろに記述します。 |
data.ds0
の場合、data
はファイルの基本名です。マスター要素の所有権をサブスクライバに送信するには、次の手順を実行します。
注意: | ALTER ELEMENT DROP MASTERという文はありません。各レプリケーション要素のMASTERデータ・ストアは1つのみである必要があり、現在指定されたMASTERはレプリケーション・スキームから削除できません。 |
この例では、データ・ストアWest上で更新してデータ・ストアEastにレプリケートする追加の表WestLeadsのレプリケートを設定します。
ALTER REPLICATION R1
ADD ELEMENT E3 TABLE WestLeads
MASTER West ON "WestCoast"
SUBSCRIBER East ON "EastCoast";
この例では、表WestLeadsにサブスクライバ(Backup)を追加します。
ALTER REPLICATION R1
ALTER ELEMENT E3
ADD SUBSCRIBER Backup ON "BackupServer";
この例では、表WestLeadsの要素名をE3からNewElementNameに変更します。
ALTER REPLICATION R1
ALTER ELEMENT E3
SET NAME NewElementName;
この例では、現在のマスターWestのすべての要素について、NewWestをマスターに指定します。
ALTER REPLICATION R1
ALTER ELEMENT * IN West
SET MASTER NewWest;
この要素は、Eastのポート番号を変更します。
ALTER REPLICATION R1
ALTER STORE East ON "EastCoast" SET PORT 22251;
この例では、my.tab1
表をmy.rep1
レプリケーション・スキームのds1データ・ストア要素に追加します。
ALTER REPLICATION my.rep1
ALTER ELEMENT ds1 DATASTORE
INCLUDE TABLE my.tab1;
この例では、my.cg1
キャッシュ・グループをmy.rep1
レプリケーション・スキームのds1
データ・ストアに追加します。
ALTER REPLICATION my.rep1
ALTER ELEMENT ds1 DATASTORE
INCLUDE CACHE GROUP my.cg1;
この例では、ds1
データ・ストアをmy.rep1
レプリケーション・スキームに追加します。データ・ストアには、my.tab2
表、my.cg2
キャッシュ・グループおよびmy.cg3
キャッシュ・グループが含まれています。
ALTER REPLICATION my.rep1
ADD ELEMENT ds1 DATASTORE
MASTER rep2
SUBSCRIBER rep1, rep3
INCLUDE TABLE my.tab2
INCLUDE CACHE GROUP my.cg2, my.cg3;
この例では、ds2
データ・ストアをレプリケーション・スキームに追加しますが、my.tab1
表、my.cg0
キャッシュ・グループおよびmy.cg1
キャッシュ・グループが除外されます。
ALTER REPLICATION my.rep1
ADD ELEMENT ds2 DATASTORE
MASTER rep2
SUBSCRIBER rep1
EXCLUDE TABLE my.tab1
EXCLUDE CACHE GROUP my.cg0, my.cg1;
NetworkOperation句を追加します。
ALTER REPLICATION R
ADD ROUTE MASTER Rep1 SUBSCRIBER Rep2
MASTERIP "1.1.1.1" PRIORITY 1 SUBSCRIBERIP "2.2.2.2"
PRIORITY 1
MASTERIP "3.3.3.3" PRIORITY 2 SUBSCRIBERIP "4.4.4.4" PRIORITY 2;
NetworkOperation句を削除します。
ALTER REPLICATION R
DROP ROUTE MASTER Rep1 SUBSCRIBER Rep2
MASTERIP "1.1.1.1" SUBSCRIBERIP "2.2.2.2"
MASTERIP "3.3.3.3" SUBSCRIBERIP "4.4.4.4";
ALTER ACTIVE STANDBY PAIR
CREATE ACTIVE STANDBY PAIR
CREATE REPLICATION
DROP ACTIVE STANDBY PAIR
DROP REPLICATION
データ・ストアから表を削除する場合は、『Oracle TimesTen Replication - TimesTen to TimesTen開発者および管理者ガイド』のレプリケートされた表の変更に関する項を参照してください。