ALTER DISTPATH

使用 ALTER DISTPATH 可以更改分发路径的属性。

语法

ALTER DISTPATH path-name
        ( BEGIN ( NOW
                  | SEQNO trail-sequence-number RBA relative-byte-address
                  | begin-datetime ),
                  | SOURCE (source-uri),
                  | TARGET (target-uri),
                  | FORMAT ( CANONICAL | TEXT | SQL | XML))
                  | SIZEMB megabytes-number
                  | SEQLEN sequence-length
                  | PROXY URI proxy-uri
                          TYPE ( SOCKS | HTTP
                          (CSALIAS credential-store-alias)
                            [ CSDOMAIN credential-store-domain ]
                  | COMPRESSION ( ON | OFF | THRESHOLD compression-threshold )
  |               | RULE    ( PASSTHRU
  |                   | FILTER [ CHUNKIDS    chunk-ids ]
  |                            [ OBJECTNAMES object-names-wildcard ]
  |                            [ OBJECTTYPES [ DML ] [ DDL ] [ PROCEDURE ] ]
  |                            [ TAGS        binary-tags ]
  |                            [ PROCEDUREFEATURENAMES feature-names-wildcard ]
  |                            [ COLUMNVALUES column-values ]
  |                            [ PARTITIONNAMES partition-names-wildcard ] )
  |                   [ RELATION    ( AND  | OR  ) ]
  |                   [ ACTION      ( INCLUDE | EXCLUDE ) ]
  |         | OPTIONS [ AUTORESTART RETRIES retries [ DELAY delay ] ]
  |                   [ CRITICAL ( YES | NO ) ]
  |                   [ EOFDELAY    eofdelay         ]
  |         | AUTHENTICATION ( OAUTH
                                   | ( CERTIFICATE certificate-name )
                                   | ( USERIDALIAS alias [DOMAIN domain
                                   | ( ENCRYPTIONPROFILE encryption-profile-name] ) ) )

path-name

要更改的分发路径的名称。

BEGIN {NOW SEQNO sequence-number RBA relative-byte-address begin-datetime}

在数据源中指定开始处理的时间戳。

NOW

指定 ADD EXTRACT 命令的发出时间。

sequence-number relative-byte-address

线索文件和 RBA 在该文件中开始捕获数据的序号。

begin-datetime

给定形式的日期和时间(时间戳)。对于提取,时间戳值必须大于在数据库中注册提取时的时间戳值。

SOURCE URI source_uri

指定源关键字后面用于指示数据来源的源 URI。此 URI 的格式包含分发服务的协议(仅支持线索)、主机名、端口号,以及源线索文件的位置。

TARGET URI target_uri

必须至少指定一个 TARGET 选项。它被视为完整对象。如果需要指定复杂的内容,则需要使用 REST API。管理客户端仅支持有限的一组目标设置,并且不会将目标设置与以前的调用合并。

CANONICAL

定义数据的单字节顺序、单浮点表示形式。

TEXT

文本数据。

SQL

有效的 SQL 语句。

XML

XML 格式的数据。

URI

指定目标分发路径的 URI。

FORMAT

指定目标分发路径 URI 的格式。

SIZEMB

指定线索序号的大小。

SEQLEN

指定线索文件的序号长度。

PROXY URI

指定目标分发路径的代理 URI。

TYPE

指定源和目标分发路径之间的连接类型。可以选择 SOCKS PROXY 或 HTTP PROXY。

CSALIAS

分发路径的加密概要文件使用的身份证明存储别名。

CSDOMAIN

分发路径的加密概要文件使用的身份证明存储域。

COMPRESSION

指定是否必须压缩线索序号。如果将其设置为 YES,则需要指定压缩的阈值。

RULE

注:从管理客户端,如果在以前存在的情况下创建规则,则会删除以前的规则并添加新规则。无法从管理客户端附加规则。如果您需要创建复杂的规则或将规则附加到现有规则,请直接使用 Web 界面或 REST API 调用。

必须至少指定一个 RULE 选项。例如:

ALTER DISTPATH dpe RULE FILTER CHUNKIDS (1, 2, 3)

PASSTHRU

请参阅 PASSTHRU \| NOPASSTHRU 中的 Parameters and Functions Reference for Oracle GoldenGate 。

FILTER

必须至少指定一个 FILTER 选项。默认情况下,筛选器之间的 RELATION 为 OR 且操作为 KEEP。

CHUNKIDS chunk_ids

指定用于按记录的块 ID(分片)筛选记录的规则。块 ID 的列表必须以逗号分隔并用括号括起。

OBJECTNAMES object_names

指定用于按记录的对象名称筛选记录的规则。对象名称的列表必须以逗号分隔并用括号括起。对象名称必须遵循以下语法:

[cdb_name.]schema_name.table_name

例如:

ALTER DISTPATH dpe RULE FILTER OBJECTNAMES (hr.emp, pdbnorth.hr.department)

OBJECTTYPES [ DML | DDL | PROCEDURE]

指定用于按记录的对象类型筛选记录的规则。必须至少指定一个对象类型。

TAGS binary_tags

指定用于按记录的标记筛选记录的规则。标记的列表必须以逗号分隔并用括号括起。标记必须是十六字母或二进制值字符串,并以关键字 HEXVALUE、HEXMASK、BINVALUE 和 BINMASK 为前缀。如果标记是 BITMASK,则筛选器在 LCR 记录的掩码和标记值之间执行按位 AND 操作。如果结果等于 MASK,则会应用该操作。例如:

ALTER DISTPATH dpe RULE FILTER TAGS (hexvalue A4, hexvalue 18, hexmask F0, hexvalue F8F, binvalue 01001100, binmask 0110)

PROCEDUREFEATURENAMES feature_names

指定用于按过程功能名称筛选记录的规则。过程功能名称的列表必须以逗号分隔并用括号括起。例如:

ALTER DISTPATH dpe RULE FILTER PROCEDUREFEATURENAMES (RAS, AUTOCDR, AQ)

COLUMNVALUES column_values

指定用于按记录的列值筛选记录的规则。筛选规则必须遵循以下语法并以逗号分隔:

[cdb_name.]schema_name.table_name.column_name ( EQ | NE | LT | GT | LE | GE ) column_value [ BEFORE | AFTER ]

EQ = 等于

NE = 不等于

LT = 小於

GT = 大于

LE = 小于或等于

GE = 大于等于

例如:

ALTER DISTPATH dpe RULE FILTER COLUMNVALUES (pdbnorth.ggadmin.hr.emp.emp_id EQ 0 BEFORE, cdbsouth.c##ggadmin.hr.emp.emp_id GT 100)

OPTIONS

必须指定至少一个选项:

AUTORESTART {RETRIES retries DELAY delay}

指定分发路径自动重新启动、重试启动的次数以及延迟。

CRTICAL [YES | NO]

指示分发路径对部署是否至关重要。默认值为 NO。

EOFDELAY eofdelay

指定提取、数据泵或复制到达数据源中当前数据的末尾后,检查新数据的频率。

要了解现有路径筛选设置的规则,请参见 Change the Path Filtering 。

AUTHENTICATION OAUTH

如果您使用外部身份提供方 (IDCS) 授权概要文件,则使用此选项。这将设置从分发服务到接收方服务的流。

注:如果部署启用了 IDCS,仍可以选择使用其他验证选项进行验证。

AUTHENTICATION CERTIFICATE certificate-name

在管理服务中上载并管理的特定于分发路径的客户端证书的标识符。

AUTHENTICATION USERIDALIAS

作为证书验证的替代方式,您可以将每个分发路径与一个目标 DBLOGIN USERIDALIAS 关联。

ENCRYPTIONPROFILE

指定分发路径的加密概要文件名称。

示例


ALTER DISTPATH dpe BEGIN NOW

ALTER DISTPATH dpe BEGIN SEQNO 1 RBA 10355

ALTER DISTPATH dpn OPTIONS AUTORESTART RETRIES 3

ALTER DISTPATH dpe RULE FILTER OBJECTNAMES (hr.*, sales.*) ACTION EXCLUDE

ALTER DISTPATH dpe RULE FILTER TAGS (AE00, MASK AB00, FF)

ALTER DISTPATH dpe RULE FILTER COLUMNVALUES (hr.employess.deptno NE nope, hr.employees.employee_id
    EQ 3 AFTER, hr.employees.deptno GE 5, hr.employees.employee_id GT 5 BEFORE)

ALTER DISTPATH dpe RULE FILTER OBJECTNAMES(hr.*,sales.*) RELATION AND ACTION EXCLUDE

此示例从所有表中排除匹配 part1* 的所有分区:

ALTER DISTPATH dpe RULE FILTER PARTITIONNAMES (part_2022*) ACTION EXCLUDE