AWS SCT CLI 參考資料 - AWS Schema Conversion Tool

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS SCT CLI 參考資料

本節說明如何開始使用命 AWS SCT 令列介面 (CLI)。此外,本節還提供有關按鍵指令和使用模式的資訊。如需 AWS SCT CLI 指令的完整參考資料,請參閱參考材料

使用 AWS SCT 指令行介面的先決條件

下載並安裝最新版本的 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 指令。在視窗中,預設安裝路徑為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' /

在前面的例子中,用命令的名稱替換命令名稱。

若要檢視 AWS SCT CLI 命令參數的相關資訊,請使用下列命令。

help -command: 'command_name' -parameters: 'parameters_list' /

在前面的例子中,用命令的名稱替換命令名稱。然後,以逗號分隔的參數名稱清單取代參數s_ 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

BTEQScriptConversionTemplate.scts

將基本太資料查詢 (BTEQ)、 FastExport和 MultiLoad 指令碼轉換為 Amazon Redshift RSQL。 FastLoad如需詳細資訊,請參閱 轉換 ETL 程序

ConversionApply

ConversionTemplate.scts

轉換來源資料庫結構描述,並將轉換的程式碼套用至目標資料庫。您也可以選擇將轉換後的程式碼儲存為 SQL 指令集,並儲存評估報告。如需詳細資訊,請參閱 轉換資料庫結構

GenericAppConversion

GenericApplicationConversionTemplate.scts

使用一般應用程式轉換器,轉換內嵌至應用 AWS SCT 程式的 SQL 程式碼。如需詳細資訊,請參閱 轉換應用程式中的 SQL 程式碼

HadoopMigration

HadoopMigrationTemplate.scts

將您的現場部署 Hadoop 叢集遷移至 Amazon EMR。如需詳細資訊,請參閱 使用阿帕奇 Hadoop 作為源 AWS SCT

HadoopResumeMigration

HadoopResumeMigrationTemplate.scts

繼續將現場部署 Hadoop 叢集中斷移轉至 Amazon EMR。如需詳細資訊,請參閱 使用阿帕奇 Hadoop 作為源 AWS SCT

信息

InformaticaConversionTemplate.scts

轉換內嵌到資訊擷取、轉換和載入 (ETL) 指令碼中的 SQL 程式碼。在 ETL 指令碼中設定與來源和目標資料庫的連線,並在轉換後儲存轉換的指令碼。如需詳細資訊,請參閱 轉換信息 ETL 腳本

LanguageSpecificAppConversion

LanguageSpecificAppConversionTemplate.scts

使用應用程式轉換器,轉換內嵌在 C#、C++、Java 和 Pro*C 應用程式中的 SQL AWS SCT 程式碼。如需詳細資訊,請參閱 轉換應用程式 SQL

OozieConversion

OozieConversionTemplate.scts

將您的工作流程轉換為 AWS Step Functions. 如需詳細資訊,請參閱 使用阿帕奇奧西作為來源 AWS SCT

RedshiftAgent

DWHDataMigrationTemplate.scts

轉換來源資料倉儲結構描述,並將轉換後的程式碼套用至目標 Amazon Redshift 資料庫。然後註冊資料擷取代理程式,建立並啟動資料移轉任務。如需詳細資訊,請參閱 從資料倉儲遷移到 Amazon Redshift

ReportCreation

ReportCreationTemplate.scts

為數個來源資料庫結構描述建立資料庫移轉報表。然後將此報告儲存為 PDF 檔案的 CSV 檔案。如需詳細資訊,請參閱 遷移評定報告

SQL ScriptConversion

SQLScriptConversionTemplate.scts

將 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 範本
  1. 打開ConversionTemplate.scts您下載的。如需詳細資訊,請參閱 範例

  2. 從腳本中刪除 CreateFilter轉換ApplyToTarget 過濾器,篩選SaveTargetSQLLbyStatement,SaveTargetSQSaveReportCSV 操作。

  3. 對於SetGlobalSettings作業中的 Oracle_driver 檔案,請輸入 Oracle 驅動程式的路徑。然後,對於 Postgreql_file,請輸入您的 PostgreSQL 驅動程序的路徑。

    如果您使用其他資料庫引擎,請為設定使用適當的名稱。如需可在作業中設定之全域設定的完整清SetGlobalSettings單,請參閱中的全域設定矩陣參考材料

  4. (可選) 在中 CreateProject,輸入專案名稱和本端專案檔的位置。如果您選擇繼續使用預設值,請確定 AWS SCT 可以在不要求管理員權限的情況下在C:\temp資料夾中建立檔案。

  5. 在中 AddSource,輸入來源資料庫伺服器的 IP 位址。此外,請輸入使用者名稱、密碼和連接埠,以連接到來源資料庫伺服器。

  6. 在中 AddTarget,輸入目標資料庫伺服器的 IP 位址。此外,請輸入要連線到目標資料庫伺服器的使用者名稱、密碼和連接埠。

  7. (選擇性) 在中 AddServerMapping,輸入要新增至對應規則的來源和目標資料庫物件。您可以使用sourceTreePathtargetTreePath參數來指定資料庫物件的路徑。或者,您可以使用sourceNamePathtargetNamePath來指定資料庫物件的名稱。如需詳細資訊,請參閱中的伺服器對應命令參考材料

    AddServerMapping作業的預設值會將所有來源結構描述與您的目標資料庫對映。

  8. 保存文件,然後使用腳本模式運行它。如需詳細資訊,請參閱 指令碼模式

AWS SCT CLI 指令碼模式

建立 AWS SCT CLI 指令碼或編輯範本之後,您可以使用RunSCTBatch命令來執行它。請確定您以 CLI 指令碼儲存您的檔案做為.scts副檔名。

您可以從 AWS SCT 安裝路徑的app資料夾執行 AWS SCT CLI 指令碼。在視窗中,預設安裝路徑為C:\Program Files\AWS Schema Conversion Tool\。請確定此資料夾包含RunSCTBatch.cmdRunSCTBatch.sh檔案。此外,此文件夾應包含該AWSSchemaConversionToolBatch.jar文件。

或者,您可以在作業系統的PATH環境變數中新增RunSCTBatch檔案的路徑。更新PATH環境變數之後,您可以從任何資料夾執行 AWS SCT CLI 指令碼。

若要執行 AWS SCT CLI 指令碼,請在視窗中使用下列命令。

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指令碼。您可以在視窗中使用這個範例。

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 參考