更新时间:2025-10-31 GMT+08:00

执行DSC

注意事项

  • 启动迁移程序前,可以自定义指定输出文件夹路径。输入文件夹路径、输出文件夹路径以及日志路径以空格隔开。默认在工具根目录下。输入文件夹路径不能包含空格。路径空格会导致DSC执行错误。详情请参见故障处理
  • 如果输出文件夹中包含子文件夹或文件,DSC会在执行迁移前将其删除或者根据用户设置(config文件夹中application.properties配置文件)将其覆盖。已删除或覆盖的子文件夹或文件无法通过DSC恢复。
  • 如果在同一台服务器上并发进行迁移(由同一个或不同DSC执行),不同的迁移任务必须使用不同的输出文件夹路径和日志路径。
  • 用户可以通过可选参数指定日志存储路径。如果路径未指定,DSC在TOOL_HOME下自动创建log文件夹。详情请参见日志参考
  • 单条SQL大小约束为20KB,超过此大小可能会导致执行过慢,从而转换失败。

迁移方法

用户可在Windows和Linux操作系统中执行runDSC.shrunDSC.bat命令进行迁移,各迁移场景的命令详见表1,带“[]”内的参数为可选参数。

表1 Windows和Linux场景迁移

迁移场景

命令行参数

Linux场景迁移

1
2
3
4
5
> ./runDSC.sh
 --source-db Teradata
[ --input-folder <input-script-path> ]
[--output-folder <output-script-path> ]
[--log-folder <log-path>]

Windows场景迁移

1
2
3
4
5
> runDSC.bat
--source-db Teradata
[ --input-folder <input-script-path> ]
[--output-folder <output-script-path> ]
[--log-folder <log-path>]
  • 命令行参数说明:
    • 简写

      --source-db 缩写为 -S。

      --input-folder 缩写为 -I。

      --output-folder 缩写为 -O。

      --log-folder 缩写为 -L。

    • source-db指定源数据库,可选值为:

      mysql

      bigquery

      teradata-re

      greenplum

      netezza-re

      oracle

      postgres

  • 命令回显说明:

    Migration process start time和Migration process end time分别表示迁移开始时间和结束时间。Total process time表示迁移总时长,单位为ms。此外,迁移文件总数、处理器总数、已使用处理器数量、日志文件路径以及错误日志文件路径也会显示在控制台上。

任务示例

  • 示例:将Teradata数据库的SQL文件迁移到适用于Linux系统下的DWS的SQL脚本中。
    1
    2
    3
    ./runDSC.sh --source-db teradata 
     
    ./runDSC.sh -S teradata 
    
    1
    ./runDSC.sh --source-db teradata --input-folder D:\test\conversion\input --output-folder D:\test\conversion\output  --log-folder D:\test\conversion\log
    
  • 示例:执行以下命令,将Teradata数据库的SQL文件迁移到适用于Windows操作系统下的DWS的SQL脚本中。
    1
    2
    3
    runDSC.bat --source-db teradata 
    
    runDSC.bat -S teradata
    
    1
    runDSC.bat --source-db teradata --input-folder D:\test\conversion\input --output-folder D:\test\conversion\output --log-folder D:\test\conversion\log
    

控制台上显示迁移详情(包括进度和完成状态):

********************** Schema Conversion Started *************************  
DSC process start time : Mon Jan 20 17:24:49 IST 2020  
Statement count progress 100% completed [FILE(1/1)]    
Schema Conversion Progress 100% completed  
**************************************************************************   
Total number of files in input folder : 1  
Total number of valid files in input folder : 1  
**************************************************************************   
Log file path :....../DSC/DSC/log/dsc.log  
Error Log file :    
DSC process end time : Mon Jan 20 17:24:49 IST 2020  
DSC total process time : 0 seconds  
********************* Schema Conversion Completed ************************