REST APIの使用
OCI GoldenGate REST APIを使用して、データ・レプリケーション・デプロイメントと通信します。curlおよびCloud Shellを使用してコマンドを起動して、様々な構成でREST APIを使用する方法について学習します。
パブリック・デプロイメントへの接続
クラウド・シェルのパブリック・エンドポイントを使用してOCI GoldenGateデプロイメントに接続するには、デプロイメントURLのみが必要です。デプロイメントURL (コンソールURL)は、デプロイメントの詳細ページで確認できます。
プライベート・デプロイメントへの接続
デプロイメントにプライベート・エンドポイントがある場合は、クラウド・シェル・ネットワーキングを使用してデプロイメントへのアクセス権を持つネットワークにクラウド・シェルを接続するか、要塞、要塞セッションおよびSSHトンネルを作成できます。
デフォルトでは、クラウド・シェルで管理されるパブリック・ネットワークを有効にしていないかぎり、クラウド・シェルはテナンシ・ホーム・リージョン内のOCI内部リソースへのネットワーク・アクセスを制限します。管理者は、Cloud Shellパブリック・ネットワークを有効にするようにアイデンティティ・ポリシーを構成する必要があります。詳細は、Cloud Shellネットワーキングを参照してください。
REST APIコールの例
オプションで、デプロイメントのユーザー名とパスワードを.netrcファイルに格納できます。次の例では、.netrcファイルを使用しているものとします。
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/services/v2/config/health証跡ファイルのリスト
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/services/v2/exttrails
抽出またはReplicatのリスト
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/v2/extractscurl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/v2/replicatsExtractまたはReplicatの詳細の取得
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/v2/extracts/<extract name>curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/v2/replicats/<replicat name>Extractの作成
{
"config":[
"Extract EATP",
"ExtTrail E1",
"UseridAlias BLOGSRCATP",
"Table SRC_OCIGGLL.*;"
],
"source":{"tranlogs":"integrated"},
"credentials":{"alias":"BLOGSRCATP"},
"registration":{"optimized":false},
"begin":"now",
"targets":[{"name":"E1"}]
}
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X POST https://<deployment URL>/services/v2/extracts/<Extract name> -d @<JSON file>.jsonReplicatの作成
{
"config":[
"REPLICAT RADW",
"UseridAlias BLOGTRGADW",
"MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;"
],
"source":{"name": "E1"},
"credentials":{"alias":"BLOGTRGADW"},
"checkpoint":{"table":"SRCMIRROR_OCIGGLL.CHECKTABLE"},
"mode":{
"type":"nonintegrated",
"parallel": false
},
"registration":"none",
"begin":"now",
"status":"stopped"
}
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X POST https://<deployment URL>/services/v2/replicats/<Replicat name> -d @<JSON file>.jsonExtractまたはReplicatの起動
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X POST https://<deployment URL>/services/v2/commands/execute -d '{ "name":"start", "processName":"<Extract or Replicat name>"}'
特定のExtractのステータスおよび統計の取得
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X POST https://<deployment URL>:<port>/services/v2/extracts/<extract name>/command -d '{"command":"STATUS"}'curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X POST https://<deployment URL>:<port>/services/v2/extracts/<extract name>/command -d '{"command":"STATUS"}'特定のReplicatのステータスおよび統計の取得
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X POST https://<deployment URL>:<port>/services/v2/replicats/<replicat name>/command -d '{"command":"STATUS"}'curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X POST https://<deployment URL>:<port>/services/v2/replicats/<replicat name>/command -d '{"command":"STATS"}'