本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Oracle 到 MySQL 的轉換設定
當來源為 Oracle 且目標為 Amazon RDS for MySQL 或 Amazon Aurora MySQL 時,會套用下列設定。您可以使用 AWS 管理主控台 或 ModifyConversionConfiguration API 操作來設定這些設定。
本主題涵蓋 Oracle 至 MySQL 轉換路徑的特定設定。除了這些設定之外,DMS 結構描述轉換還提供適用於所有來源和目標對的設定,例如轉換後 SQL 中動作項目註解的嚴重性等級,以及使用生成式 AI 轉換的選項。如需這些設定,請參閱 常見的轉換設定。
當您使用 API 或 AWS CLI 時,請在區段名稱 下指定轉換路徑設定ORACLE_TO_MYSQL。若要確認您的專案使用的區段名稱,請先呼叫 DescribeConversionConfiguration,並僅更新回應中存在的區段。
每個設定都會在括號中顯示 API 和 AWS CLI 參數名稱後面的 AWS 管理主控台 標籤。使用 API 或 CLI AWS 設定設定時,請使用 參數名稱。
- 產生資料列 ID (
GenerateRowId) -
您的來源 Oracle 資料庫可以使用
ROWID虛擬資料欄。MySQL 不支援類似的功能。此設定指定 DMS 結構描述轉換是否模擬轉換程式碼中的ROWID虛擬資料欄。主控台標籤 API/CLI 值 Behavior (行為) 不產生 falseDMS ROWID結構描述轉換不會模擬虛擬資料欄,並將參考保留為動作項目。當您的來源 Oracle 程式碼不使用 時,請使用此選項ROWID。轉換後的程式碼執行速度更快。使用 bigint 資料類型模擬 ROWID 虛擬資料欄 trueDMS ROWID結構描述轉換會使用bigint資料類型模擬轉換程式碼中的虛擬資料欄。類型:布林值 (
true|false)預設:
false注意
對於 Oracle 到 MySQL
ROWID轉換路徑,GenerateRowId是布林值 (true|false),並僅使用bigint資料類型模擬虛擬資料欄。對於 Oracle 到 PostgreSQL 轉換路徑,相同的設定是字串列舉,也提供模擬選項character varying(GENERATE_AS_CHARACTER_DOMAIN_TYPE)。如需詳細資訊,請參閱Oracle 到 PostgreSQL 轉換設定。
函數轉換設定
根據預設,DMS 結構描述轉換會在轉換後的程式碼中模擬 Oracle 轉換函數,讓結果符合 Oracle 行為。如果您的原始程式碼不依賴 Oracle 特定的格式,您可以改為將這些函數轉換為原生 MySQL 對等項目。原生函數執行速度更快,因此true只有在您確認用量與 MySQL 相容後,才能將這些選項設定為 。
- 使用原生 MySQL TO_CHAR 函數 (
ToCharFunctionOracle) -
指定 DMS 結構描述轉換是否將 Oracle
TO_CHAR函數呼叫轉換為原生 MySQL 函數,而不是模擬 Oracle 特定的格式。-
false— DMS 結構描述轉換模擬轉換程式碼TO_CHAR中 Oracle 特定的格式。 -
true— 呼叫會轉換為原生 MySQLTO_CHAR函數。當您的原始程式碼不使用 Oracle 特定的格式字串時,請使用此選項。
類型:布林值 (
true|false)預設:
false -
- 使用原生 MySQL TO_DATE 函數 (
ToDateFunctionOracle) -
指定 DMS 結構描述轉換是否將 Oracle
TO_DATE函數呼叫轉換為原生 MySQL 函數,而不是模擬 Oracle 特定的格式。-
false— DMS 結構描述轉換模擬轉換程式碼TO_DATE中 Oracle 特定的格式。 -
true— 呼叫會轉換為原生 MySQLTO_DATE函數。當您的原始程式碼不使用 Oracle 特定的格式字串時,請使用此選項。
類型:布林值 (
true|false)預設:
false -
- 使用原生 MySQL TO_NUMBER 函數 (
ToNumber) -
指定 DMS 結構描述轉換是否將 Oracle
TO_NUMBER函數呼叫轉換為原生 MySQL 函數,而不是模擬 Oracle 特定的格式。-
false— DMS 結構描述轉換模擬轉換程式碼TO_NUMBER中 Oracle 特定的格式。 -
true— 呼叫會轉換為原生 MySQLTO_NUMBER函數。當您的原始程式碼不使用 Oracle 特定的格式字串時,請使用此選項。
類型:布林值 (
true|false)預設:
false -
- 改善轉換後程式碼的效能,其中資料庫和應用程式使用相同的時區 (
ToTimeZone) -
指定 DMS 結構描述轉換是否模擬轉換程式碼中的時區。
-
true— DMS 結構描述轉換不會模擬時區。當您的資料庫和應用程式使用相同的時區時,請使用此選項。轉換後的程式碼執行速度更快。 -
false— DMS 結構描述轉換模擬轉換程式碼中的時區。
類型:布林值 (
true|false)預設:
false -
範例:將 Oracle 設定為 MySQL 設定
下列範例會將 Oracle 轉換函數轉換為 ORACLE_TO_MYSQL區段的原生 MySQL 對等項目。
{ "ORACLE_TO_MYSQL": { "ToCharFunctionOracle": true, "ToDateFunctionOracle": true, "ToNumber": true } }