使用 REST API
连接到专用部署
如果部署具有专用端点,则可以使用 Cloud Shell Networking 将 Cloud Shell 连接到可以访问部署的网络,或者创建堡垒、堡垒会话和 SSH 隧道。
默认情况下,Cloud Shell 限制对租户主区域中 OCI 内部资源的网络访问,除非您启用了 Cloud Shell 托管公共网络。您的管理员必须配置身份策略才能启用 Cloud Shell 公共网络。有关更多信息,请参见 Cloud Shell 网络。
要连接到 Admin Client 中的专用 OCI GoldenGate 部署:
REST API 调用示例
(可选)您可以将部署用户名和密码存储到 .netrc 文件中。以下示例假定您使用的是 .netrc 文件。
现在,您可以使用 curl 向数据复制部署发送请求。例如,以下命令返回部署健康状况:
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
列出提取或复制
列出提取:
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/v2/extracts列出副本:
curl -n -H "Content-Type: application/json" -H "Accept: application/json" -X GET https://<deployment URL>/v2/replicats检索提取或复制详细信息
检索提取详细信息:
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>创建提取
首先,创建一个包含提取配置的 JSON 文档。例如,此文件可用于使用 E1 线索生成名为 EATP 的提取,并从 SRC_OCIGGLL.* 捕获数据:
{
"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>.json创建副本
首先,创建一个包含 Replicat 配置的 JSON 文档。例如,此文件可用于使用 E1 线索生成名为 RADW 的复制,并将数据从 SRC_OCIGGLL.* 复制到 SRCMIRROR_OCIGGLL.*:
{
"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>.json启动提取或复制
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>"}'
获取给定提取的状态和统计信息
获取提取状态:
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"}'获取给定复制的状态和统计信息
获取复制状态:
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"}'