CDM目前支持迁移以下关系型数据库:
● 数据仓库服务(DWS)
说明
DWS连接器不支持物理机纳管模式。
● FusionInsight LibrA
● 云数据库 MySQL
● 云数据库 PostgreSQL
● 云数据库 SQL Server
● MySQL
● PostgreSQL
● Microsoft SQL Server
● Oracle
● IBM Db2
● SAP HANA
● MYCAT
● 达梦数据库 DM
● 分库
本章节将关系型数据库根据连接参数的差异,分为以下几部分进行连接参数的描述:
● 常见关系数据库连接参数
常见关系数据库包括数据仓库服务(DWS)、云数据库 MySQL、云数据库 PostgreSQL、云数据库 SQLServer、MySQL、PostgreSQL、Microsoft SQL Server、IBM Db2、FusionInsight LibrA、SAP HANA或达梦(DM)数据库。
●
Oracle数据库连接参数
●
MYCAT数据库连接参数
● 分库连接参数
前提条件
已参考管理驱动上传对应的驱动。
常见关系数据库连接参数
常见关系数据库包括数据仓库服务(DWS)、云数据库 MySQL、云数据库
PostgreSQL、云数据库 SQLServer、MySQL、PostgreSQL、Microsoft SQL Server、
IBM Db2、FusionInsight LibrA、SAP HANA或达梦(DM)数据库。
连接参数如表4-10所示。
表4-10 常见关系数据库连接参数
参数名 说明 取值样例
名称 连接的名称,根据连接的数据源类型,用户可自定 义便于记忆、区分的连接名。
mysql_link
数据库服务 器
配置为要连接的数据库的IP地址或域名。
单击输入框后的“选择”,可获取用户的DWS、
RDS等实例列表。
192.168.0.1
端口 配置为要连接的数据库的端口。 不同的数据库端
口不同,请根据 具体情况配置。
例如:
MySQL默认端 口:3306 SQLServer默认 端口:1433 PostgreSQL默认 端口:5432 数据库名称 配置为要连接的数据库名称。 dbname 用户名 待连接数据库的用户。该数据库用户需要有数据表
的读写权限,以及对元数据的读取权限。
cdm
密码 用户密码。
-参数名 说明 取值样例 使用本地API MySQL连接器连接时的可选参数,选择是否使用
数据库本地API加速。
创建MySQL连接时,CDM会自动尝试启用MySQL 数据库的local_infile系统变量,开启MySQL的 LOAD DATA功能加快数据导入,提高导入数据到 MySQL数据库的性能。
如果CDM自动启用失败,请联系数据库管理员启 用local_infile参数或选择不使用本地API加速。
如果是导入到RDS上的MySQL数据库,由于RDS上 的MySQL默认没有开启LOAD DATA功能,所以同 时需要修改MySQL实例的参数组,将
“local_infile”设置为“ON”,开启该功能。
说明如果RDS上的“local_infile”参数组不可编辑,则说明是 默认参数组,需要先创建一个新的参数组,再修改该参 数值,并应用到RDS的MySQL实例上,具体操作请参见
《关系型数据库用户指南》。
是
使用Agent 是否选择通过Agent从源端提取数据。
达梦(DM)数据库暂不支持使用Agent。
是
Agent 单击“选择”,选择管理Agent中已创建的
Agent。
1000
一次提交行
-SSL加密 可选参数,支持通过SSL加密方式连接数据库,暂 不支持自建的数据库。
RDS上的PostgreSQL数据库服务做了一些安全增 强,在创建RDS上的PostgreSQL的连接时,该参数 需要配置为“是”。
是
参数名 说明 取值样例 连接属性 可选参数,单击“添加”可增加多个指定数据源的
JDBC连接器的属性,参考对应数据库的JDBC连接 器说明文档进行配置。
说明CDM作业默认打开了useCursorFetch开关,即JDBC连接 器与关系型数据库的通信使用二进制协议。
● 开源MySQL数据库支持useCursorFetch参数,无需对 此参数进行设置。
● 阿里云AnalyticDB(ADB)数据库对useCursorFetch参 数有兼容问题,在配置与ADB连接时需要关闭 useCursorFetch开关,即添加连接属性
“useCursorFetch”,对应属性值设置为“false”。
如不进行此设置,会出现日期转换出错的情况。
sslmode=requir e
引用符号 可选参数,连接引用表名或列名时的分隔符号,参
考对应数据库的产品文档进行配置。 '
Oracle 数据库连接参数
连接Oracle数据库时,连接参数如表4-11所示。
表4-11 Oracle 数据库连接参数
参数名 说明 取值样例
名称 连接的名称,根据连接的数据源类型,用户可自定义便 于记忆、区分的连接名。
mysql_link
数据库服务 器
配置为要连接的数据库的IP地址或域名。
单击输入框后的“选择”,可获取用户的DWS、RDS实 例列表。
192.168.0.
1
端口 配置为要连接的数据库的端口。 默认端口:
1521 数据库连接
类型 选择Oracle数据库连接类型:
● Service Name:通过SERVICE_NAME连接Oracle数 据库。
● SID:通过SID连接Oracle数据库。
SID
实例名称 配置Oracle实例ID,用于实例区分各个数据库。“数据
库连接类型”选择“SID”时才有该参数。 dbname 数据库名称 配置为要连接的数据库名称。“数据库连接类型”选择
“Service Name”时才有该参数。 dbname 用户名 待连接数据库的用户。该数据库用户需要有数据表的读
写权限,以及对元数据的读取权限。 cdm
密码 用户密码。
-参数名 说明 取值样例 使用Agent 是否选择通过Agent从源端提取数据。 是 Agent 单击“选择”,选择管理Agent中已创建的Agent。 -Oracle版本 创建Oracle连接时才有该参数,根据您Oracle数据库的
版本来选择。当出现“java.sql.SQLException: Protocol violation异常”时,可以尝试更换版本号。
高于12.1
一次请求行
Oracle到DWS迁移时,可能出现目的端写太久导致迁移 超时的情况。此时请减少Oracle源端“一次请求行数”
参数值的设置。
1000
连接属性 可选参数,单击“添加”可增加多个指定数据源的JDBC 连接器的属性,参考对应数据库的JDBC连接器说明文档 进行配置。
说明CDM作业默认打开了useCursorFetch开关,即JDBC连接器与关 系型数据库的通信使用二进制协议。
● 开源MySQL数据库支持useCursorFetch参数,无需对此参 数进行设置。
● 阿里云AnalyticDB(ADB)数据库对useCursorFetch参数有兼 容问题,在配置与ADB连接时需要关闭useCursorFetch开 关,即添加连接属性“useCursorFetch”,对应属性值设 置为“false”。如不进行此设置,会出现日期转换出错的 情况。
sslmode=r equire
引用符号 可选参数,连接引用表名或列名时的分隔符号,参考对
应数据库的产品文档进行配置。 '
MYCAT 数据库连接参数
MYCAT是一个开源的分布式数据库系统,其核心功能是分表分库,即将一个大表水平 分割为多个小表,存储在后端MySQL或者其他数据库里。连接参数如表4-12所示。
表4-12 MYCAT 数据库连接参数
参数名 说明 取值样例
名称 连接的名称,根据连接的数据源类型,用户可自定义便
于记忆、区分的连接名。 mysql_link
数据库服务
器 配置为要连接的数据库的IP地址或域名。
单击输入框后的“选择”,可获取用户的DWS、RDS实 例列表。
192.168.0.
1
端口 配置为要连接的数据库的端口。 3306
参数名 说明 取值样例
数据库名称 配置为要连接的数据库名称。 dbname
用户名 待连接数据库的用户。该数据库用户需要有数据表的读
写权限,以及对元数据的读取权限。 cdm
密码 用户密码。
-使用本地API 可选参数,选择是否使用数据库本地API加速。
创建连接时,CDM会自动尝试启用MySQL数据库的 local_infile系统变量,开启MySQL的LOAD DATA功能 加快数据导入,提高导入数据到MySQL数据库的性能。
如果CDM自动启用失败,请联系数据库管理员启用 local_infile参数或选择不使用本地API加速。
是
后端连接 选择是否使用后端连接。 是
管理账号 输入MYCAT管理账号。 root
管理密码 输入MYCAT管理密码。 123456
管理端口 输入MYCAT管理端口。 9066
后端数据源 输入MYCAT后端数据库的类型。 MYSQL 后端用户名 输入MYCAT后端数据库的用户名。 cdm
后端密码 输入MYCAT后端数据库的密码。
-一次请求行 数
可选参数,单击“显示高级属性”后显示。
指定每次请求获取的行数,根据数据源和作业数据规模 的大小配置该参数。如果配置过大或过小,可能影响作 业的时长。
1000
连接属性 可选参数,单击“添加”可增加多个指定数据源的JDBC 连接器的属性,参考对应数据库的JDBC连接器说明文档 进行配置。
sslmode=r equire
引用符号 可选参数,连接引用表名或列名时的分隔符号,参考对 应数据库的产品文档进行配置。
'
分库连接参数
分库指的是同时连接多个后端数据源,该连接可作为作业源端,将多个数据源的数据 合一迁移到其他数据源上。连接参数如表4-13所示。
表4-13 分库连接参数
参数名 说明 取值样例
名称 连接的名称,根据连接的数据源类型,用户可自定义便 于记忆、区分的连接名。
mysql_link
参数名 说明 取值样例 用户名 待连接数据库的用户。
仅当“数据源列表”中某个后端数据库A未配置用户名 密码时,该配置对A生效。如果后端数据库B已配置用户 名密码,此处配置不对B生效。
cdm
密码 待连接数据库的用户密码。
仅当“数据源列表”中某个后端数据库A未配置用户名 密码时,该配置对A生效。如果后端数据库B已配置用户 名密码,此处配置不对B生效。
-使用Agent 是否选择通过Agent从源端提取数据。 是 Agent 单击“选择”,选择管理Agent中已创建的Agent。 -后端数据源 输入后端数据库的类型,当前仅支持MYSQL。 MYSQL 数据源列表 输入后端数据库的IP、端口、数据库名称、账户名、密
码,以“:”隔开。即ip:port:dbs:username:password,
其中username:password可以不填,此时以“用户 名”、“密码”配置为准。
如果此处有多个后端数据库,需要确保表结构一致,并 使用“|”分隔数据源。如果密码包含“|”或者“:”,
可使用“\”转义。
例如“192.168.2.1:3306:cdm|
192.168.2.2:3306:cdm:user:password”表示,第一个 后端数据库IP为192.168.2.1,端口为3306,数据库名称 为cdm,账户名密码以“用户名”、“密码”处配置为 准;第二个后端数据库IP为192.168.2.2,端口为3306,
数据库名称为cdm,账户名为“user”、密码为
“password”。
192.168.2.
1:3306:cd m|192.168.2.
2:3306:cd m:user:pas sword
一次请求行
1000
连接属性 可选参数,单击“添加”可增加多个指定数据源的JDBC 连接器的属性,参考对应数据库的JDBC连接器说明文档 进行配置。
sslmode=r equire
引用符号 可选参数,连接引用表名或列名时的分隔符号,参考对
应数据库的产品文档进行配置。 '