
# MySQL连接属性配置
在使用数据集成服务时，您可以根据实际需求配置MySQL数据源的JDBC连接属性，以优化数据迁移过程并解决可能出现的问题。
以下是可配置的连接属性及其详细说明，您可以通过添加连接属性增加多个指定数据源的JDBC连接器属性，并参考对应数据库的JDBC连接器说明文档进行配置。
#### 可选连接属性配置
| 属性名称                      | 类型         | 描述                                                                                                                                                                |
|:---|:---|:---|
| connectTimeout            | int（单位：毫秒） | 设置连接超时时间。当迁移数据量较大或通过查询语句检索全表时，可能会因连接超时导致迁移失败。此时，您可以自定义连接超时时间，避免超时导致失败。例如：connectTimeout=360000。                                                                   |
| socketTimeout             | int（单位：毫秒） | 设置socket超时时间。当迁移数据量较大或通过查询语句检索全表时，可能会因socket超时导致迁移失败。此时，您可以自定义socket超时时间，避免超时导致失败。例如：socketTimeout=360000。                                                        |
| tinyInt1isBit             | boolean    | PostgreSQL默认开启配置tinyInt1isBit=true，将TINYINT(1)当作BIT（也就是Types.BOOLEAN）来处理，会将1或0读取为true或false，从而导致迁移失败。此时，您可以关闭此配置，避免迁移报错。例如：tinyInt1isBit=false。                   |
| mysql.bool.type.transform | boolean    | 与tinyInt1isBit类似，用于控制TINYINT(1)的处理方式。当tinyInt1isBit=false时，此参数可进一步确保布尔类型数据的正确处理。例如：mysql.bool.type.transform=false。                                               |
| useCursorFetch            | boolean    | CDM作业默认打开了JDBC连接器与关系型数据库通信使用二进制协议开关，即useCursorFetch=true。部分第三方可能存在兼容问题导致迁移时间转换出错，您可以关闭此开关。开源PostgreSQL数据库支持useCursorFetch参数，通常无需对此参数进行设置。例如：useCursorFetch=false。 |
| allowPublicKeyRetrieval   | boolean    | PostgreSQL默认关闭允许公钥检索机制。因此，连接PostgreSQL数据源时，如果TLS不可用、使用RSA公钥加密时，可能导致连接报错。此时，您可以打开公钥检索机制，避免连接报错。例如：allowPublicKeyRetrieval=true                                     |
   
#### 配置方法
1. 在管理中心服务的界面中，找到MySQL数据源的配置部分。
2. 在连接属性配置区域，单击"添加"按钮，增加新的连接属性配置项。
3. 根据您的需求，填写属性名称和对应的值。您可以参考上表中的描述来选择合适的属性和值。
4. 完成配置后，保存并测试连接，确保配置生效且数据迁移过程能够正常进行。
 
#### 注意事项
- 在配置连接属性时，请确保您了解每个属性的具体含义和作用，避免因错误配置导致数据迁移失败或其他问题。
- 如果您在配置过程中遇到任何问题，建议参考MySQL官方JDBC连接器的说明文档，以获取更详细的信息和指导。
- 在实际使用中，建议您根据数据迁移的具体场景和需求，逐步调整和优化连接属性配置，以达到最佳的迁移效果。
通过合理配置MySQL连接属性，您可以有效提升数据迁移的稳定性和效率，确保数据集成过程的顺利进行。
