
# 将Oracle同步到Kafka
#### 支持的源和目标数据库
表1支持的数据库 
| 源数据库                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 目标数据库                                                                                                                                                                   |
|:---|:---|
| - 本地自建数据库（Oracle 10g、11g、12c、18c、19c、21c版本）  - ECS自建数据库（Oracle 10g、11g、12c、18c、19c、21c版本）   | - Kafka（0.11.x-3.x版本）   |
   
#### 使用建议
- 数据库同步与环境多样性和人为操作均有密切关系，为了确保同步的平顺，建议您在进行正式的数据库同步之前进行一次演练，可以帮助您提前发现问题并解决问题。
- 建议您在启动任务时选择"稍后启动"功能，将启动时间设置在业务低峰期，避免同步对业务造成性能影响。
- 更多DRS对数据库的影响，可参考[DRS对源数据库和目标数据库有什么影响](https://support.huaweicloud.com/drs_faq/drs_16_1145.html)。
 
#### 使用须知
在创建同步任务前，请务必阅读以下使用须知。
![](https://support.huaweicloud.com/realtimesyn-drs/public_sys-resources/note_3.0-zh-cn.png)
- 建议创建单独用于DRS任务连接的数据库账号，避免因为数据库账号密码修改，导致的任务连接失败。
- 连接源和目标数据库的账号密码修改后，请参考[修改连接信息](https://support.huaweicloud.com/realtimesyn-drs/drs_10_0016.html)章节修改DRS任务的连接信息，避免任务连接失败后自动重试，导致数据库账号被锁定影响使用。
 
表2环境要求 
| **类型名称** | **使用限制**（DRS自动检查）                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|
| 数据库权限设置  | - 源数据库端： - 12c及以上版本租户模式： 12c及以上版本CDB数据库同步时，需要具有CREATE SESSION，SELECT ANY DICTIONARY，EXECUTE_CATALOG_ROLE，SELECT ANY TRANSACTION，LOGMINING权限，以及针对单表的SELECT权限。   - 12c及以上版本PDB数据库同步时，除了需要具有PDB内的CREATE SESSION，SELECT ANY DICTIONARY，EXECUTE_CATALOG_ROLE，SELECT ANY TRANSACTION权限，以及针对单表的SELECT权限，还需要具有CDB的CREATE SESSION，SELECT ANY DICTIONARY，EXECUTE_CATALOG_ROLE，SELECT ANY TRANSACTION，LOGMINING，SET CONTAINER权限。  - 12c及以上版本非租户模式： 需要具有CREATE SESSION，SELECT ANY DICTIONARY，EXECUTE_CATALOG_ROLE，SELECT ANY TRANSACTION，LOGMINING权限，以及针对单表的SELECT权限。   - 11g及以下版本数据库同步时，需要具有CREATE SESSION，SELECT ANY DICTIONARY，EXECUTE_CATALOG_ROLE，SELECT ANY TRANSACTION权限，以及针对单表的SELECT权限。  - 增量同步时，源库Oracle需要开启日志归档模式和最小补充日志，所需同步表必须开启PK/UI或以ALL级别的补充日志，不限制库级或表级补充日志方式，若只开启表级补充日志，重建或者RENAME表后需要重新设置；请确保以上配置在同步过程中始终保持开启状态。  - 12c及以上版本不支持使用ORACLE_MAINTAINED=Y的用户账号进行增量同步（system/sys除外），因为该属性的账号无日志解析权限。  - 所需权限详情及授权语句参考下表源数据库权限要求。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| 同步对象约束   | - 支持表的同步，其他数据库对象暂不支持。  - 支持VARCHAR、VARCHAR2、NVARCHAR2、NUMBER、FLOAT、LONG、DATE、BINARY_FLOAT、BINARY_DOUBLE、CHAR、NCHAR、ROWID、TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONE、RAW类型。  - 不支持接入的列类型：GEOMETRY以及自定义类型。  - 不支持同步但以过滤方式接入的列类型：INTERVAL_YEAR_TO_MONTH、INTERVAL_DAY_TO_SECOND、UROWID、BFILE。  - 支持同步但默认过滤的列类型：BLOB、 CLOB、NCLOB、XML、LONG、LONG RAW。  - 增量同步LOB类型仅支持BasicFiles属性，不支持SecureFiles属性，支持的LOB类型大小限10M以内。  - 增量阶段源库为Oracle物理备库（PHYSICAL STANDBY）时不支持解析lob、xml类型数据（无法生成数据字典），如果增量同步的表中出现lob、xml类型会导致增量同步异常。  - 如果表中只有LOB字段，可能出现数据不一致性或任务失败的情况。  - 增量阶段不支持Oracle字符集扩展的字符，标准字符集无法解析Oracle自定义扩展字符。  - 不支持同步源库中的临时表。  - 不支持默认值含有表达式的函数的表的同步。  - 不支持同步源库中有虚拟列的表。  - 不支持数据库表空间、表、列等对象加密情况下的数据同步。  - 增量同步不支持Oracle上的分布式事务（XA事务）和PARALLEL DML。  - 如果Oracle中使用LOB类型各自的empty函数写入数据时，通过JDBC查询出来的值是空字符串，写入到目标库后是空字符串还是NULL取决于目标库对空字符串值的处理。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| 源数据库要求   | - 库名、表名不支持的字符有：非ASCII字符、". "、 "\>"、 "\<"、 "\\"、 "\`"、 "\|"、 ","、 "? "、 "! "、 """和 "'"。  - 不支持选择源数据库的空库进行同步。  - 源库为RAC时，不支持增加、减少节点数量。  - 源库为RAC时，如果需要使用SCAN IP，需要drs node能够连接全部节点的VIP，否则无法通过连接检查。  - 目前仅支持同步如下字符集：ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| 目标数据库要求  | - 目标库为社区Kafka（0.11.x-3.x版本）。  - Kafka的auto.create.topics.enable参数建议为false。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| 操作须知     | - 如有中文、日文等特殊字符，业务连接Oracle数据库使用的编码需和Oracle数据库服务端编码一致，否则目标库会出现乱码。  - Oracle中实时同步到kafka后的字符集为UTF8。  - Oracle归档日志文件大小必须大于单条数据最大值，避免单条数据日志跨文件（超过2个日志文件）导致的增量数据解析异常。  - 对于Oracle RAC集群，建议使用SCAN IP+ SERVICE_NAMES方式创建任务，SCAN IP具有更强的容错性，更好的负载能力，更快的同步体验。  - 源库为Oracle RAC时，如果需要使用SCAN IP配置DRS任务，需要保证SCAN IP、DRS节点的IP同时能与源库的所有VIP互通（Oracle内部机制），否则无法通过连通性检查。若不使用SCAN IP，可以使用某一节点的VIP，这种情况下DRS日志解析只会在VIP指定的RAC节点上进行。  - 若源库为RAC，增量同步首次启动时所有RAC节点必须正常在线，否则增量启动会出现异常。  - 若源库为RAC，增量同步时，不支持增加、减少节点数量，避免导致增量同步异常（为保证数据的强一致性）。  - 当使用PDB数据库同步时，由于Oracle LogMiner组件的限制，增量同步时必须打开全部PDB。  - Oracle 12.2及以上版本，由于Oracle LogMiner组件的限制，增量同步不支持Schema名、表名或列名超过30个字符。  - 附加日志级别为all或者pk+ui。  - 日志中未出现的列在传递的消息中不会出现，表示该列未更新。  - 同步过程中，不允许删除连接源和目标数据库的用户的用户名、密码、权限，或修改目标数据库的端口号。  - 同步过程中，禁止对Oracle源库做resetlogs操作，否则会导致数据无法同步且任务无法恢复。  - 同步过程中，不支持LOB类型的rollback操作，否则会导致同步任务失败。  - 同步过程中，不支持修改源数据库Oracle用户名（SCHEMA名），包括11.2.0.2之前版本通过修改USER$字典表方式及11.2.0.2之后通过ALTER USER username RENAME TO new_username修改SCHEMA名称的场景。  - 增量同步时，不建议选择混合分区表，因为混合分区表中的外部分区数据变更不产生DML日志，DRS增量数据同步无法获取变更信息，会存在数据不一致的风险。  - 增量同步时，增量解析时间类型仅支持在Oracle时间类型合法范围内的数据，超范围的数据可能导致任务异常，例如年份大于9999时会出现数据截断。  - 增量同步时，不支持表中同时具有Number类型主键极值（小于-9.9999999999999999999999999999999999或大于9.99999999999999999999999999999999999E+125）和LOB类型的场景。  - 增量同步过程中，请勿在Kafka上删除接收DRS数据的topic，否则可能导致任务失败。  - 单增量任务场景，选择Logminer增量读取方式时不支持直接连PDB数据库，用户需要提供CDB的Service Name/SID、用户名和密码。  - 选择表级对象同步时，增量同步过程中不建议对表进行重命名操作。  - 选择表级对象同步时，仅支持所有表同步到目标端的同一个Topic；选择导入对象文件时，支持不同表同步到目标端不同的Topic。  - 支持表级DDL操作。  - 任务再编辑增加新表时，请确保新增的表的事务都已提交，否则未提交的事务可能无法同步到目标库。建议在业务低峰期做增加表的操作。  - XMLTYPE类型在Oracle内部存储方式为CLOB或BLOB，使用限制同CLOB和BLOB一致。  - 仅Oracle 11g及以上版本支持XMLTYPE类型同步。  - 不支持源库对处于同步状态的表执行任何涉及DDL变更的FLASHBACK操作（如 FLASHBACK TABLE XXX TO BEFORE DROP），此操作必然导致数据不一致或同步任务异常。  - 由于Oracle已弃用 LONG/LONG RAW历史类型，且JDBC驱动对该类型存在固定32767字节读取限制，超过部分会被静默截断，无法获取完整数据；若业务表中存在存储长度超过32767字节的LONG/LONG RAW类型字段，必须在数据同步前遵循Oracle官方推荐方案手工进行类型迁移：LONG → CLOB、LONG RAW → BLOB。   |
   
表3源数据库权限要求 
| 数据库版本/模式    | 核心系统权限                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 同步对象权限                                                                                                                                      |
|:---|:---|:---|
| 11g及以下      | CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE权限 (GRANT CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE to drsUser;)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 同步表的SELECT权限 (GRANT SELECT ON \<userName.tbName\> to drsUser;) |
| 12c及以上非租户模式 | CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE, LOGMINING权限 (GRANT CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE, LOGMINING to drsUser;)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 同步表的SELECT权限 (GRANT SELECT ON \<userName.tbName\> to drsUser;)  |
| 12c及以上CDB模式 | CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE, LOGMINING权限 (GRANT CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE, LOGMINING to drsUser;)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 同步表的SELECT权限 (GRANT SELECT ON \<userName.tbName\> to drsUser;)  |
| 12c及以上PDB模式 | PDB内CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE权限 (alter session set container = pdbname; GRANT CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE to drsUser;) CDB内CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE, LOGMINING, SET CONTAINER权限 (alter session set container = CDB$ROOT; GRANT CREATE SESSION, SELECT ANY DICTIONARY, SELECT ANY TRANSACTION, EXECUTE_CATALOG_ROLE, LOGMINING to drsUser; GRANT SET CONTAINER TO \<drsUser\> CONTAINER=ALL;) | 同步表的SELECT权限 (GRANT SELECT ON \<userName.tbName\> to drsUser;)    |
   
#### 操作步骤
1. 在"实时同步管理"页面，单击"创建同步任务"。
2. 在"同步实例"页面，填选区域、项目、任务名称、描述、同步实例信息，单击"开始创建"。此处支持单击"使用上次创建信息"，使用上次创建任务实例缓存的信息。 
   - 任务信息
     图1同步任务信息   
     ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000002544724256.png "点击放大")
     
     表4任务和描述 
     | **参数** | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
     |:---|:---|
     | 计费模式   | 有如下两种模式可选择： - 包年/包月  - 按需计费   |
     | 区域     | 当前所在区域，可进行切换。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
     | 项目     | 当前区域对应的项目，可进行切换。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
     | 任务名称   | 任务名称在4到50位之间，必须以字母开头，可以包含字母、数字、中划线或下划线，不能包含其他的特殊字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
     | 描述     | 描述不能超过256位，且不能包含! = \< \> \& ' " \\ 特殊字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
        
     
   
   - 同步实例信息
     图2同步实例信息   
     ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000002106786764.png "点击放大")
     表5同步实例信息 
     | **参数**   | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
     |:---|:---|
     | 数据流动方向   | 选择"自建-自建"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
     | 源数据库引擎   | 选择"Oracle"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
     | 目标数据库引擎  | 选择"Kafka"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
     | 网络类型     | 此处以"公网网络"为示例。目前支持可选公网网络、VPC网络和VPN、专线网络。 - 公网网络：适合通过公网网络将其他云下或其他平台的数据库同步到目标数据库的场景，此类型要求数据库绑定弹性公网IP（EIP）。当一端为本云的数据库实例时，DRS任务与该端的通信方式为VPC内网。  - VPN、专线网络：适合VPN、专线、CC、VPCEP、或者用户已打通VPC对等连接的网络场景，实现其他云下自建数据库与云上数据库同步、云上同Region跨账号、或云上跨Region的数据库之间的同步。                                                                                           |
     | DRS任务类型  | 选择DRS任务类型，可选"单AZ"和"双AZ"。 - 双AZ：一主一备的经典高可用架构，提高了DRS任务的可靠性。双AZ任务创建后，DRS会同时创建一主一备两个子任务，当主AZ任务发生异常，DRS会自动启动备AZ任务继续进行同步，提高同步任务的可靠性。适用于业务数据量较大，需要长期同步，并对中断时间有严格要求的场景。  - 单AZ：采用单个节点部署架构，每个任务只创建一个节点，性价比较高。适用于业务数据量较小，短期同步，并对中断时间无严格要求的场景。   目前仅部分链路支持DRS任务类型的选择，详细说明可参考[双AZ任务倒换](https://support.huaweicloud.com/realtimesyn-drs/drs_10_0403.html)。 |
     | VPC      | 选择可用的虚拟私有云。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
     | 同步实例所在子网 | 请选择同步实例所在的子网。也可以单击"查看子网"，跳转至"网络控制台"查看实例所在子网帮助选择。 默认值为当前所选数据库实例所在子网，请选择有可用IP地址的子网。为确保同步实例创建成功，仅显示已经开启DHCP的子网。                                                                                                                                                                                                                                                                                                                                                                                                                          |
     | 内网安全组    | 请选择内网安全组。内网安全组限制实例的安全访问规则，加强安全访问。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
     | 同步模式     | - 增量 增量同步通过解析日志等技术，将源端产生的增量数据同步至目标端。 无需中断业务，实现同步过程中源业务和数据库继续对外提供访问。                                                                                                                                                                                                                                                                                                        |
     | 指定公网IP   | 网络类型选择"公网网络"时可见，选择为DRS实例绑定的弹性公网IP。任务创建时，DRS将会自动绑定该弹性公网IP，等待任务结束后将自动解绑该弹性公网IP。指定公网IP数量需要与实例数量匹配。 DRS任务类型选择"双AZ"时，需要分别指定主IP和备IP。 公网网络迁移产生的数据传输费用收取标准请参见：[弹性公网IP价格计算器](https://www.huaweicloud.com/pricing.html#/eip)。                                                                                                                                                                                                                                                                                                                          |
        
     
   
   - 任务类型
     图3任务类型   
     ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000002544724288.png "点击放大")
     表6任务类型信息 
     | **参数** | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
     |:---|:---|
     | 规格类型   | 选择DRS实例的规格类型，不同规格类型对应不同性能的性能上限，详细可参考[实时同步链路规格说明](https://support.huaweicloud.com/productdesc-drs/drs_01_0314.html)。 说明： 目前，DRS同步仅支持任务类型为单AZ的同步任务升级实例规格，不支持降低规格，具体操作及约束限制可参考[同步规格变更](https://support.huaweicloud.com/realtimesyn-drs/drs_11_0490.html)。 |
     | 可用区    | DRS任务创建的可用区，选择跟源或目标库相同的可用区性能更优。 DRS任务类型选择"双AZ"时，可用区分为"主可用区"和"备可用区"。 图4可用区 ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000002575244529.png "点击放大")                                                                          |
        
     
   
   - 企业项目和标签
     图5企业项目和标签   
     ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000002544564662.png "点击放大")
     
     表7企业项目和标签 
     | **参数** | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
     |:---|:---|
     | 企业项目   | 企业项目是一种云资源管理方式，企业项目管理服务提供统一的云资源按项目管理，以及项目内的资源管理、成员管理。请在下拉框中选择所在的企业项目，其中，default为默认项目。 更多关于企业项目的信息，请参见[《企业管理用户指南》](https://support.huaweicloud.com/usermanual-em/zh-cn_topic_0108763975.html)。 如果需要自定义企业项目，请在控制台右上角单击"企业"，进入"企业项目管理"页面创建，具体请参见《企业管理用户指南》中"[创建企业项目](https://support.huaweicloud.com/usermanual-em/zh-cn_topic_0108763964.html)"的内容。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
     | 标签     | - 可选配置，对同步任务的标识。使用标签可方便管理您的任务。每个任务最多支持20个标签配额。  - 如果您的组织已经设定DRS的相关标签策略，则需按照标签策略规则为任务添加标签。标签如果不符合标签策略的规则，则可能会导致任务创建失败，请联系组织管理员了解标签策略详情。  - 任务创建成功后，您可以单击任务名称，在"标签"页签下查看对应标签。关于标签的详细操作，请参见[标签管理](https://support.huaweicloud.com/realtimesyn-drs/drs_synchronization_tag.html)。   |
        
     
   
   
   
   
3. 在"源库及目标库"页面，同步实例创建成功后，填选源库信息和目标库信息，单击"源库和目标库"处的"测试连接"，分别测试并确定与源库和目标库连通后，勾选协议，单击"下一步"。 
   图6源库信息   
   ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000001927070165.png "点击放大")
   表8源库信息 
   | **参数**  | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                      |
   |:---|:---|
   | IP地址或域名 | 源数据库的IP地址或域名。 说明： 对于RAC集群，建议使用scanip接入，提高访问性能。                                                                                                                                                                                                                                                          |
   | 端口      | 源数据库服务端口，可输入范围为1\~65535间的整数。                                                                                                                                                                                                                                                                                                                                                                                                |
   | 数据库服务名  | 数据库服务名（Service Name/SID），客户端可以通过其连接到Oracle，具体查询方法请参照界面提示。                                                                                                                                                                                                                                                                                                                                                                   |
   | PDB名称   | PDB同步仅在Oracle12c及以后的版本支持，该功能为选填项，当需要迁移PDB中的表时开启。 PDB功能开启后，只能迁移该PDB中的表，并且需要提供CDB的service name/sid及用户名和密码，不需要PDB的用户名和密码。                                                                                                                                                                                                                                                         |
   | 数据库用户名  | 源数据库的用户名。                                                                                                                                                                                                                                                                                                                                                                                                                   |
   | 数据库密码   | 源数据库的用户名所对应的密码。                                                                                                                                                                                                                                                                                                                                                                                                             |
   | SSL安全连接 | 通过该功能，用户可以选择是否开启对迁移链路的加密。如果开启该功能，需要用户上传SSL CA根证书。 说明： - 最大支持上传500KB的证书文件。  - 如果不启用SSL安全连接，请自行承担数据安全风险。   |
      
   ![](https://support.huaweicloud.com/realtimesyn-drs/public_sys-resources/note_3.0-zh-cn.png)
   **源数据库的IP地址或域名、数据库用户名和密码，** **会被系统加密暂存，直至删除该同步任务后自动清除。**
   图7目标库信息   
   ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000001880991318.png "点击放大")
   表9目标库信息 
   | **参数**  | **描述**                                                                                                                                  |
   |:---|:---|
   | IP地址或域名 | 目标数据库的IP地址或域名。                                                                                                                          |
   | 安全协议    | 支持四种认证方式的选择，PLAINTEXT、SSL、SASL_PLAINTEXT和SASL_SSL，详细说明可参考[Kafka认证方式](https://support.huaweicloud.com/realtimesyn-drs/drs_05_0018.html)。 |
      
   
   
4. 在"设置同步"页面，选择Topic和同步对象，单击"下一步"。 
   图8设置同步   
   ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000001881151246.png "点击放大")
   
   表10同步模式和对象 
   | **参数**               | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   |:---|:---|
   | DML同步                | 选择需要同步的DML操作，默认都勾选。 不勾选Delete则不会同步源库增量数据中的Delete语句，可能会导致数据不一致，因此存在数据冲突或任务失败的风险。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   | 同步DDL                | 选择是否将DDL语句投递到Kafka中。若选择同步DDL，在选择partition策略为按照主键hash时，因DDL中无主键值，DDL会按照表名hash后投递到topic中，其余情况下投递方式与partition策略一致。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   | 全列数据                 | 选择是否需要单行的数据完整，DRS增量通过解析源库日志实现，单行数据是否完整取决于日志中是否记录了所有列的值。 若需要全列数据，则需要源库打开ALL级别的补全日志让日志中记录单行数据所有列的信息。该选项联动任务预检查阶段对源库补全日志级别的校验，DRS增量同步对于补全日志最低的要求为表级PK/UI级别的补全日志，补全日志检查方法可参考[源库Oracle补全日志检查方法](https://support.huaweicloud.com/drs_faq/drs_16_1155.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   | 同步Topic策略            | 同步Topic策略，可选择 - 集中投递到一个Topic：适合源库业务量不大的场景。  - 按schema自动生成Topic名字：如果每个schema数据量很大，建议选择按schema自动生成Topic名字。  - 按schema-表名自动生成Topic名字：如果每张表数据量很大，建议选择schema-表名自动生成Topic名字。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
   | Topic                | 选择目标端需要同步到的Topic，同步Topic策略选择集中投递到一个Topic时可见。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   | Topic名字格式            | Topic名字格式，同步Topic策略选择自动生成Topic名字时可见。 由于Kafka的机制限制，Topic名字只能包含ASCII字符、"."、"_"及"-"，若超过该范围会导致创建Topic失败，任务异常。 若Topic名字格式中包含数据库对象名，请确保对象名的字符在Kafka topic命名机制内。 Topic名字格式支持schema和tablename两个变量，其他字符都当做常量。分别用$schema$代替模式名，$tablename$代替表名。 例如：配置成 $schema$-$tablename$时，如果以oracle为源，模式名为schema1，表名为tab1，则Topic名字为schema1-tab1。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   | Partition个数          | 同步Topic策略选择自动生成Topic名字时可见。 用来设置topic的分区个数。每个topic都可以创建多个partition，越多的partition可以提供更高的吞吐量，越多的partition会消耗更多的资源，建议根据broker节点的实际情况来设置partition的数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   | 副本个数                 | 同步Topic策略选择自动生成Topic名字时可见。 用来设置topic的副本数。每个topic可以有多个副本，副本位于集群中不同的broker上，副本的数量不能超过broker的数量，否则创建topic时会失败。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
   | 同步到kafka partition策略 | 同步到kafka partition策略。 - 按schema.表名的hash值投递到不同Partition：适用于单表的查询场景，表内保序，表与表之间不保序，可以提高单表读写性能，推荐使用此选项。  - 按主键的hash值投递到不同Partition：适用于一个表一个Topic的场景，避免该表都写到同一个分区，消费者可以并行从各分区获取数据。 对于无主键表，如果选择"按主键的hash值投递到不同的partition"策略时，同步任务则会使用默认"schema.表名的hash值投递到不同的partition"的策略进行同步。   - 按schema的hash值投递到不同Partition：适用于一个schema一个topic的场景，避免多个schema下的数据写到一个分区，消费者可以并行从各分区获取数据。  - 全部投递到Partition 0：数据固定发送到Topic的0号分区，任务默认多线程发送数据，能够保证表级保序，表与表之间不保序，并发写入性能较差，若有强事务一致性要求，推荐选择此选项并找运维人员修改为单线程写Kafka或配置Topic策略按表名自动生成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   | 投送到kafka的数据格式        | 选择Oracle投送到kafka的数据格式。 - Avro：可以显示Avro二进制编码，高效获取数据。  - Json：为Json消息格式。   详细格式可参考[Kafka消息格式](https://support.huaweicloud.com/realtimesyn-drs/drs_03_0052.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   | Kafka压缩格式            | 此处展示选择的Kafka压缩格式，任务启动后生效。 - None：不压缩。  - LZ4：压缩率较低，压缩速率较高。  - GZIP：压缩率较高，压缩速率较低，对同步任务及kafka server的CPU资源消耗较高。  - Snappy：压缩率中等，压缩速率中等。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   | 同步对象                 | 左侧框是源数据库对象，右侧框是已经选择的对象，同步对象支持表级同步、导入对象文件，您可以根据业务场景选择对应的数据进行同步。 - 选择导入对象文件时，支持不同表同步到目标端不同的Topic，具体导入步骤和说明可参考[导入同步对象](https://support.huaweicloud.com/realtimesyn-drs/drs_10_0402.html)。  - 使用导入对象功能时 ，同步Topic策略选择"集中投递到一个Topic"，才能使用[对象名修改（对象名映射）](https://support.huaweicloud.com/realtimesyn-drs/drs_10_0015.html)功能，否则会按Topic名字格式生成。   说明： - 选择对象的时候支持对**展开的库**进行搜索，以便您快速选择需要的数据库对象。  - 如果有切换源数据库的操作或源库同步对象变化的情况，请在选择同步对象前单击右上角的![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000002555122086.png)，以确保待选择的对象为最新源数据库对象。    - 当对象名称包含空格时，名称前后的空格不显示，中间如有多个空格只显示一个空格。  - 选择的同步对象名称中不能包含空格。   |
      
   
   
5. 在"预检查"页面，进行同步任务预校验，校验是否可进行实时同步。 
   - 查看检查结果，如有不通过的检查项，需要修复不通过项后，单击"重新校验"按钮重新进行任务预校验。 预检查不通过项处理建议请参见《数据复制服务用户指南》中的"[预检查不通过项修复方法](https://support.huaweicloud.com/trouble-drs/drs_11_0001.html)"。
     
   
   - 预检查完成后，且所有检查项结果均通过时，单击"下一步"。
     ![](https://support.huaweicloud.com/realtimesyn-drs/public_sys-resources/note_3.0-zh-cn.png)
     所有检查项结果均通过时，若存在请确认项，需要阅读并确认详情后才可以继续执行下一步操作。
     
   
   
   
   
6. 在"任务确认"页面，设置同步任务的启动时间、任务异常通知设置、SMN主题、时延阈值、任务异常自动结束时间，并确认同步任务信息无误后，勾选协议，单击"启动任务"，提交同步任务。 
   图9任务启动设置   
   ![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000002495446142.png "点击放大")
   
   表11任务启动设置 
   | **参数**        | **描述**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   |:---|:---|
   | 启动时间          | 同步任务的启动时间可以根据业务需求，设置为"立即启动"或"稍后启动"。 说明： 预计同步任务启动后，会对源数据库和目标数据库的性能产生影响，建议选择业务低峰期，合理设置同步任务的启动时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   | 任务异常通知设置      | 该项为可选参数，开启之后，选择对应的SMN主题。当同步任务状态、时延指标或数据异常时，系统将发送通知。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   | SMN主题         | "任务异常通知设置"项开启后可见，需提前在SMN上申请主题并添加订阅。 SMN主题申请和订阅可参考[《消息通知服务用户指南》](https://support.huaweicloud.com/usermanual-smn/zh-cn_topic_0043394914.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   | 时延阈值          | 在增量同步阶段，源数据库和目标数据库之间的同步有时会存在一个时间差，称为时延，单位为秒。 时延阈值设置是指时延超过一定的值后（时延阈值范围为0到3600s），DRS可以发送告警通知。告警通知将在时延稳定超过设定的阈值6min后发送，避免出现由于时延波动反复发送告警通知的情况。 说明： - 当时延阈值设置为0时，不会发送通知给收件人。  - 首次进入增量同步阶段，会有较多数据等待同步，存在较大的时延，属于正常情况，不在此功能的监控范围之内。  - 设置时延阈值之前，需要设置任务异常通知。   |
   | 任务异常自动结束时间（天） | 设置任务异常自动结束天数，输入值必须在14到100之间，默认值14。 说明： - 仅按需计费任务支持设置任务异常自动结束时间，包年/包月任务不支持。  - 异常状态下的任务仍然会计费，而长时间异常的任务无法续传和恢复。设置任务异常自动结束天数后，异常且超时的任务将会自动结束，以免产生不必要的费用。                                                                                                                                                                                                                                                                                                                                                                                                                              |
      
   
   
7. 同步任务提交后，您可在"实时同步管理"页面，查看并[管理自己的任务](https://support.huaweicloud.com/realtimesyn-drs/drs_TaskMangement.html)。
   
   - 您可查看任务提交后的状态，状态请参见[任务状态说明](https://support.huaweicloud.com/realtimesyn-drs/drs_06_0004.html)。
   
   - 在任务列表的右上角，单击![](https://support.huaweicloud.com/realtimesyn-drs/figure/zh-cn_image_0000001180625010.png)刷新列表，可查看到最新的任务状态。
   
   - 对于未启动、状态为配置中的任务，DRS默认保留3天，超过3天DRS会自动删除后台资源，当前任务状态不变。当用户再次配置时，DRS会重新申请资源，此时DRS任务IP会发生改变。
   
   - 对于创建失败的任务，DRS默认保留3天，超过3天将会自动结束任务。
   
   - 对于公网网络类型的任务，由于DRS需要在任务结束后删除后台资源，所以该任务绑定的弹性公网IP需要等待一段时间，才能恢复为解绑状态。
   
   
   
   
 
