本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS SCT CLI 参考
本节介绍如何开始使用 AWS SCT 命令行界面 (CLI)。此外,本节还提供有关关键命令和使用模式的信息。有关 AWS SCT CLI 命令的完整参考,请参见参考材料。
主题
使用 AWS SCT 命令行界面的先决条件
下载并安装最新版本的 Amazon Corretto 11。有关更多信息,请参阅《Amazon Corretto 11 用户指南》中适用于 Amazon Corretto 11 的下载内容。
下载并安装最新版本的 AWS SCT。有关更多信息,请参阅 正在安装 AWS SCT。
AWS SCT CLI 交互模式
可以在交互模式下使用 AWS SCT 命令行界面。在此模式下,您可以将命令逐个输入控制台。您可以使用此交互模式了解有关 CLI 命令的更多信息或下载最常用的 CLI 场景。
要转换源数据库架构 AWS SCT,请运行序列操作:创建新项目、连接到源数据库和目标数据库、创建映射规则以及转换数据库对象。由于此工作流程可能很复杂,因此我们建议在 AWS SCT CLI 模式下使用脚本。有关更多信息,请参阅 脚本模式。
您可以从 AWS SCT 安装路径的app
文件夹中运行 AWS SCT CLI 命令。在 Windows 中,默认安装路径为 C:\Program Files\AWS Schema Conversion Tool\
。确保此文件夹中包含 AWSSchemaConversionToolBatch.jar
文件。
要进入 AWS SCT CLI 交互模式,请在完成先决条件后使用以下命令。
java -jar AWSSchemaConversionToolBatch.jar -type interactive
现在,您可以运行 AWS SCT CLI 命令了。确保新行以 /
结束命令。此外,请确保在命令参数值前后使用直单引号('
)。
注意
如果前面的命令返回 Unexpected error
,请执行以下步骤:
java -Djdk.jar.maxSignatureFileSize=20000000 -jar AWSSchemaConversionToolBatch.jar
要查看 AWS SCT CLI 交互模式下的可用命令列表,请运行以下命令。
help /
要查看有关 AWS SCT CLI 命令的信息,请使用以下命令。
help -command: '
command_name
' /
在前面的示例中,将 command_name
替换为命令名称。
要查看有关 AWS SCT CLI 命令参数的信息,请使用以下命令。
help -command: '
command_name
' -parameters: 'parameters_list
' /
在前面的示例中,将 command_name
替换为命令名称。然后,将 parameters_list
替换为用逗号分隔的参数名称列表。
要在 AWS SCT CLI 交互模式下从文件运行脚本,请使用以下命令。
ExecuteFile -file: '
file_path
' /
在前面的示例中,将 file_path
替换为脚本文件路径。确保文件有 .scts
扩展名。
要退出 AWS SCT CLI 交互模式,请运行quit
命令。
示例
以下示例显示有关 Convert
命令的信息:
help -command: 'Convert' /
以下示例显示有关 Convert
命令两个参数的信息。
help -command: 'Convert' -parameters: 'filter, treePath' /
获取 AWS SCT CLI 场景
要获取最常用的 AWS SCT 场景,你可以使用GetCliScenario
命令。您可以在交互模式下运行此命令,然后编辑下载的模板。在脚本模式下使用编辑的文件。
GetCliScenario
命令将所选模板或所有可用模板保存到指定目录。模板包含运行脚本的完整命令集。请务必编辑这些模板中的文件路径、数据库凭证、对象名和其他数据。另外,请确保删除不使用的命令,并在需要时向脚本中添加新命令。
要运行 GetCliScenario
命令,请完成先决条件并进入 AWS SCT CLI 交互模式。有关更多信息,请参阅 交互模式。
接下来,使用以下语法运行 GetCliScenario
命令并获取 AWS SCT
场景。
GetCliScenario -type: '
template_type
' -directory: 'file_path
' /
在前面的示例中,将 template_type
替换为下表中的一种模板类型。接下来,将 file_path
替换为要下载脚本的文件夹路径。确保它 AWS SCT 可以在不请求管理员权限的情况下访问此文件夹。此外,请确保在命令参数值前后使用直单引号('
)。
要下载所有 AWS SCT CLI 模板,请在不带-type
选项的情况下运行前面的命令。
下表包括您可以下载的 AWS SCT CLI 模板类型。对于每个模板,该表都包含文件名和可使用该脚本运行的操作的描述。
模板类型 | 文件名 | 描述 |
---|---|---|
BTEQ ScriptConversion |
|
将 Teradata 基本 Teradata 查询 (BTEQ)、、 FastExport和 FastLoad脚本转换为 Amazon Redshift RSQL MultiLoad 。有关更多信息,请参阅 转换 ETL 过程。 |
ConversionApply |
|
转换源数据库架构并将转换后的代码应用于目标数据库。或者,将转换后的代码另存为 SQL 脚本,并保存评估报告。有关更多信息,请参阅 转换数据库架构。 |
GenericAppConversion |
|
使用通用 AWS SCT 应用程序转换器转换嵌入到应用程序中的 SQL 代码。有关更多信息,请参阅 转换应用程序中的 SQL 代码。 |
HadoopMigration |
|
将您的本地 Hadoop 集群迁移到 Amazon EMR。有关更多信息,请参阅 使用 Apache Hadoop 作为 AWS SCT 的源。 |
HadoopResumeMigration |
|
恢复中断的从本地 Hadoop 集群到 Amazon EMR 的迁移。有关更多信息,请参阅 使用 Apache Hadoop 作为 AWS SCT 的源。 |
Informatica |
|
转换嵌入到 Informatica 提取、转换和加载(ETL)脚本中的 SQL 代码。在 ETL 脚本中配置与源数据库和目标数据库的连接,并在转换后保存转换后的脚本。有关更多信息,请参阅 转换 Informatica ETL 脚本。 |
LanguageSpecificAppConversion |
|
使用 AWS SCT 应用程序转换器转换嵌入到 C#、C++、Java 和 Pro*C 应用程序中的 SQL 代码。有关更多信息,请参阅 转换应用程序 SQL。 |
OozieConversion |
|
将你的 Apache Oozie 工作流程转换为。 AWS Step Functions有关更多信息,请参阅 使用 Apache Oozie 作为 AWS SCT 的源 。 |
RedshiftAgent |
|
转换源数据仓库架构,并将转换后的代码应用于目标 Amazon Redshift 数据库。然后,注册数据提取代理,创建并启动数据迁移任务。有关更多信息,请参阅 从数据仓库迁移到亚马逊 Redshift。 |
ReportCreation |
|
创建多个源数据库架构的数据库迁移报告。然后将此报告另存为 PDF 文件或 CSV 文件。有关更多信息,请参阅 迁移评估报告。 |
SQL ScriptConversion |
|
将 SQL*Plus 或 TSQL 脚本转换为 PL/SQL 并保存转换后的脚本。此外,保存评估报告。 |
下载 AWS SCT CLI 模板后,使用文本编辑器将脚本配置为在源数据库和目标数据库上运行。接下来,使用 AWS SCT CLI 脚本模式运行脚本。有关更多信息,请参阅 AWS SCT CLI 脚本模式。
示例
以下示例将所有模板下载到 C:\SCT\Templates
文件夹。
GetCliScenario -directory: 'C:\SCT\Templates' /
以下示例将 ConversionApply
操作模板下载到 C:\SCT\Templates
文件夹。
GetCliScenario -type: 'ConversionApply' -directory: 'C:\SCT\Templates' /
编辑 AWS SCT CLI 场景
下载场景模板后,将其配置为可在数据库上运行的工作脚本。
对于所有模板,请务必提供源数据库和目标数据库驱动程序的路径。有关更多信息,请参阅 下载所需的数据库驱动程序。
确保包含源数据库和目标数据库的数据库凭证。此外,请务必设置映射规则以描述转换项目的源目标对。有关更多信息,请参阅 创建映射规则。
接下来,配置要运行的操作的范围。您可以删除不使用的命令或向脚本中添加新命令。
例如,假设您计划将源 Oracle 数据库中的所有架构转换为 PostgreSQL。然后,您计划将数据库迁移评估报告另存为 PDF,并将转换后的代码应用于目标数据库。在这种情况下,您可以使用 ConversionApply
操作模板。使用以下步骤编辑您的 AWS SCT CLI 模板。
编辑ConversionApply
操作的 AWS SCT CLI 模板
打开下载的
ConversionTemplate.scts
。有关更多信息,请参阅 示例。从脚本中移除CreateFilter、转换 ApplyToTarget -f ilt SaveTarget er、-filter LbyStatement、SaveTarget SQL 和 SaveReportCSV 操作。
对于SetGlobalSettings操作中的 oracle_driver_file,请输入 Oracle 驱动程序的路径。然后,在 postgresql_driver_file 中,输入 PostgreSQL 驱动程序的路径。
如果使用其他数据库引擎,请使用相应的设置名称。有关可在SetGlobalSettings操作中设置的全局设置的完整列表,请参阅中的全局设置矩阵参考材料。
(可选)对于 CreateProject,请输入您的项目名称和本地项目文件的位置。如果您选择继续使用默认值,请确保无需请求管理员权限 AWS SCT 即可在
C:\temp
文件夹中创建文件。对于 AddSource,请输入源数据库服务器的 IP 地址。此外,输入用于连接到源数据库服务器的用户名、密码和端口。
对于 AddTarget,输入目标数据库服务器的 IP 地址。此外,输入用于连接到目标数据库服务器的用户名、密码和端口。
(可选)对于 AddServerMapping,输入要添加到映射规则的源和目标数据库对象。您可以使用
sourceTreePath
和targetTreePath
参数指定数据库对象的路径。或者,您可以使用sourceNamePath
和targetNamePath
指定数据库对象的名称。有关更多信息,请参阅 参考材料 中的服务器映射命令。该AddServerMapping操作的默认值将所有源架构映射到您的目标数据库。
保存文件,然后使用脚本模式运行文件。有关更多信息,请参阅 脚本模式。
AWS SCT CLI 脚本模式
创建 AWS SCT CLI 脚本或编辑模板后,您可以使用RunSCTBatch
命令运行该脚本。确保将带 CLI 脚本的文件另存为 .scts
扩展文件。
您可以从 AWS SCT 安装路径的app
文件夹中运行 AWS SCT CLI 脚本。在 Windows 中,默认安装路径为 C:\Program Files\AWS Schema Conversion Tool\
。确保此文件夹包含 RunSCTBatch.cmd
或 RunSCTBatch.sh
文件。此外,此文件夹还应包含 AWSSchemaConversionToolBatch.jar
文件。
或者,也可以在操作系统的 PATH
环境变量中添加 RunSCTBatch
文件路径。更新PATH
环境变量后,可以从任何文件夹运行 AWS SCT CLI 脚本。
要运行 AWS SCT CLI 脚本,请在 Windows 中使用以下命令。
RunSCTBatch.cmd --pathtoscts "
file_path
"
在前面的示例中,将 file_path
替换为脚本文件路径。
要运行 AWS SCT CLI 脚本,请在 Linux 中使用以下命令。
RunSCTBatch.sh --pathtoscts "
file_path
"
在前面的示例中,将 file_path
替换为脚本文件路径。
您可以在此命令中提供可选参数,例如数据库凭证、控制台输出中的详细信息级别等。有关更多信息,请下载 AWS SCT 命令行界面参考,网址为参考材料。
示例
以下示例运行 C:\SCT\Templates
文件夹中的 ConversionTemplate.scts
脚本。您可以在 Windows 中使用这个示例。
RunSCTBatch.cmd --pathtoscts "C:\SCT\Templates\ConversionTemplate.scts"
以下示例在 /home/user/SCT/Templates
目录中运行 ConversionTemplate.scts
脚本。您可以在 Linux 中使用这个例子。
RunSCTBatch.sh --pathtoscts "/home/user/SCT/Templates/ConversionTemplate.scts"
AWS SCT CLI 参考资料
您可以在以下指南中找到有关 AWS Schema Conversion Tool 命令行界面 (CLI) 的参考资料:AWS Schema Conversion Tool CLI 参考