DSC配置
DSC的配置包含如下内容:
- 设置application.properties:用于配置工具的迁移行为,例如,是否要覆盖目标文件夹下的文件,是否对sql文件格式化。
- 设置Java内存分配:用户配置工具在迁移过程中可使用的内存资源,超出设置的内存,工具将显示错误消息并退出。
设置application.properties
application.properties文件中包括一系列应用配置参数,用于控制DSC在迁移数据库脚本时的行为,该文件中的参数为通用控制参数,适用于Teradata、MySQL迁移。
设置方法如下。
- 打开config文件夹中的application.properties文件。
- 根据实际需要修改application.properties文件中参数的值。application.properties文件中的参数解释见表1。

- 参数值不区分大小写。
- 除了列出的参数外,用户不得更改任何参数值。
- 保存后退出。
参数 | 说明 | 取值范围 | 默认值 | 样例 |
|---|---|---|---|---|
| 若该参数配置发生改变,工具将无法按预期运行。 |
| true | formatterrequired=true |
| 若该参数配置发生改变,工具将无法按预期运行。 |
| true | prevalidationFlag=true |
| 若该参数配置发生改变,工具将无法按预期运行。 |
| true | commentSeparatorFlag=true |
| 若该参数配置发生改变,工具将无法按预期运行。 | NA | 不适用 | queryDelimiter=; |
| 若该参数配置发生改变,工具将无法按预期运行。 | NA | 不适用 | blogicDelimiter=/ |
| 工具迁移超时时间。 若该参数配置发生改变,工具将无法按预期运行。 | - | 4 | Timeout=4 |
| 合法的文件扩展名,以逗号分隔。 如果此配置项fileExtension有修改,工具将不能正常运行。 说明: 导出的脚本必须带有如下后缀,如:
等。 |
| SQL | fileExtension=SQL |
| 指定是否使用SQL Formatter对源SQL文件进行格式化。 若该参数设为true,则对输入文件的副本进行格式化并保存到{输出路径}/formattedSource文件夹。 |
| true | formattedSourceRequired=true |
| 指定要在输出/目标文件中执行的操作。 Overwrite:用于覆盖输出文件夹中的现有文件。 指定是否必须覆盖输出文件夹中的文件。 Delete:用于删除目标文件夹中的所有文件。 Cancel:用于在输出/目标文件夹中存在文件时取消操作。 |
| overwrite | target_files=overwrite |
| 指定输入/源文件的编码格式。 如果未设置该参数(或该参数被注释掉),则工具将基于区域设置使用默认编码。 说明:
|
| 基于区域设置的默认编码 | encodingFormat=UTF8 |
| 指定用于迁移的线程数。 | 取决于可用的系统资源 | 3 | NoOfThreads=3 |
| 指定输入文件大小告警阈值,单位为B(字节)、KB、MB或GB。 如果指定的值无效,那么将使用默认值。 如果指定的源文件大小超过指定的值,则会向用户显示以下警告消息: ***************** [WARNING] : Migration of the following files(>100KB) will take more time: bigfile001.SQL bigfile008.SQL ***************** | 10 KB~1 GB | 10MB | MaxFileSizeWarning=10MB |
| 允许输入文件的最大大小,如果超过这个限制,文件迁移将被跳过。 | - | 20MB | MaxFileSize=20MB |
| 指定待迁移的单个查询的最大长度。 如果指定的值无效,则工具会将其重置为默认值,并且控制台上将显示以下错误消息: The query length parameter (MaxSqlLen) value is out of range. Resetting to default value. 如果输入查询超过指定的最大长度,则查询迁移会预验证失败。工具会跳过该查询,并记录以下错误消息: 2018-07-06 12:05:57,598 ERROR TeradataBulkHandler:195 Error occurred during processing of input in Bulk Migration. PreQueryValidation failed due to: Invalid termination; OR exclude keyword found in query; OR query exceeds maximum length (MaxSqlLen config parameter). filename.SQL for Query in position : xx | 1 .. 52,428,800字节 (1字节 - 50 MB) | 1048576 (1 MB) | MaxSqlLen=1048576 |
| 设置初始内存 | NA | 256 MB | initialJVMMemory=256MB 表明内存达到256MB时,进程将启动。 |
| 设置最大内存 | NA | 1024 MB | maxJVMMemory=2048m 表明内存达到2048 MB时,进程将启动。 |
| 在DWS中运行迁移后的脚本。参数值范围为true/false。脚本仅可在Linux系统的服务器上运行。 |
| false | executesqlingauss=false |

- 如果为配置参数提供了错误或无效值,DSC将采用该参数的默认值。
- 如果存在扩展名不受支持(如“.doc”),建议将此扩展名添加到“application.properties”文件的“fileExtension”配置参数中。
设置Java内存分配
DSC支持通过参数控制Java虚拟机(JVM)的内存分配量,并预设默认值。
在迁移操作期间,如果内存使用超过设置的值,DSC将提示“java.lang.OutOfMemoryError: GC overhead limit exceeded”错误消息并退出,此时用户可通过更改application.properties配置文件中的initialJVMMemory和maxJVMMemory 的值,以分配更多内存。

可用系统资源决定了内存分配量。
参数 | 说明 | 推荐取值 |
|---|---|---|
Xms | 指定初始内存分配量,单位为MB。 | 该参数最小值为256 MB,最大值取决于可用的系统资源。 默认值:256 |
Xmx | 指定内存分配量的上限,单位为MB。 | 该参数最小值为1024 MB,最大值取决于可用的系统资源。 默认值:1024 |
打开校验模块config文件夹下的gaussdb.properties文件,参照表3,配置参数以连接DWS。

