职位提取到特定起始点
您可以将提取定位到事务处理日志中的特定起点。您可以从 Web 界面、管理客户端或 REST API 服务端点设置此项。
如果要创建提取,则必须执行以下步骤在数据库中的特定职位启动新创建的提取:
-
使用
BEGIN NOW选项添加提取,如以下示例所示:ADD EXTRACT extn, TRANLOG, BEGIN NOW -
注册提取。
REGISTER EXTRACT extn DATABASE -
更改此提取并指定时间戳。
ALTER EXTRACT extn BEGIN 2020-08-02T06:05:30.000Z
Web 界面
要将提取定位到数据库中的特定起点,请执行以下操作:
-
如果正在运行,则停止提取。
-
从 "Actions" 列中,单击三点图标,然后单击 Alter 。
-
从更改提取对话框中,单击开始选项,然后选择自定义时间。
-
从自定义时间字段中选择时间戳,然后选择时区。
-
单击提交。
-
通过单击操作列中的“播放”图标重新启动提取。
管理客户端
要使用 ADD/ALTER EXTRACT 命令定位提取,请执行以下操作:
{ADD | ALTER EXTRACT} *group*, LOGNUM *log_num*, LOGPOS *log_pos*
-
group 是需要其起始位置的 Oracle GoldenGate 提取组的名称。
-
LOGNUM是日志文件编号。例如,如果所需的日志文件名为test.000034,则LOGNUM值为 34。提取将搜索此日志文件。如果LOGNUM值有前导零,ADD EXTRACT命令将失败。例如,ADD EXTRACT extn, TRANLOG, LOGNUM 000001, LOGPOS 0将会失败。而将LOGNUM设置为 1,此示例可成功。 -
LOGPOS 是日志文件中标识特定事务处理记录的事件偏移值。事件偏移值存储在日志记录的标头部分。要定位在
binlog文件的开头,则将LOGPOS设置为 0。
MySQL 将提取定位至特定起始点的注意事项
在 MySQL 日志中,事件偏移值只能在给定的二进制文件中唯一。职位值和日志编号的组合将唯一标识事务处理记录。最大日志编号长度为 8 字节无符号整数,最大日志偏移长度为 8 字节无符号整数。日志编号和日志偏移由管道(‘ | ’)分隔符分隔。提取将捕获在指定日志中的此位置之后可用的事务处理记录。此外,还可以使用时间戳定位提取。