

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

# 在 DMS 結構描述轉換中建立來源資料提供者
<a name="data-providers-source"></a>

您可以在 DMS 結構描述轉換的遷移專案中使用 Microsoft SQL Server、Oracle、PostgreSQL、MySQL、IBM DB2 for LUW、IBM DB2 for z/OS 和 SAP ASE (Sybase ASE) 資料庫作為來源資料提供者。

請務必將網路設定為允許來源資料提供者和 DMS 結構描述轉換之間的互動。如需詳細資訊，請參閱[設定用於 DMS 結構描述轉換的網路](instance-profiles-network.md)。

**Topics**
+ [使用 Microsoft SQL Server 資料庫作為 DMS 結構描述轉換中的來源](data-providers-sql-server.md)
+ [使用 Oracle 資料庫作為 DMS 結構描述轉換中的來源](data-providers-oracle.md)
+ [使用 Oracle 資料倉儲資料庫作為 DMS 結構描述轉換中的來源](data-providers-oracle-dw.md)
+ [在 DMS 結構描述轉換中使用 PostgreSQL 資料庫做為來源](sc-data-providers-postgresql.md)
+ [在 DMS 結構描述轉換中使用 MySQL 資料庫做為來源](sc-data-providers-mysql.md)
+ [在 DMS 結構描述轉換中使用適用於 Linux、UNIX 和 Windows 資料庫的 IBM Db2 做為來源](sc-data-providers-db2luw.md)
+ [在 DMS 結構描述轉換中使用 IBM Db2 for z/OS 資料庫作為來源](sc-data-providers-db2zos.md)
+ [在 AWS DMS 結構描述轉換中使用 SAP ASE (Sybase ASE) 資料庫作為來源](dm-data-providers-source-sybase-ASE.md)

# 使用 Microsoft SQL Server 資料庫作為 DMS 結構描述轉換中的來源
<a name="data-providers-sql-server"></a>

您可以使用 SQL Server 資料庫作為 DMS 結構描述轉換中的遷移來源。

透過 DMS 結構描述轉換，您可以將資料庫程式碼物件從 SQL Server 轉換為下列目標：
+ Aurora MySQL
+ Aurora PostgreSQL
+ RDS for MySQL
+ RDS for PostgreSQL

如需受支援 SQL Server 資料庫版本的相關資訊，請參閱：[DMS 結構描述轉換的來源資料提供者](CHAP_Introduction.Sources.md#CHAP_Introduction.Sources.SchemaConversion)。

如需使用 DMS 結構描述轉換搭配來源 SQL Server 資料庫的詳細資訊，請參閱 [SQL Server 到 MySQL 遷移的逐步解說](https://docs.aws.amazon.com/dms/latest/sbs/schema-conversion-sql-server-mysql.html)。

## 將 Microsoft SQL Server 作為來源的權限
<a name="data-providers-sql-server-permissions"></a>

檢視 Microsoft SQL Server 作為來源的必要權限如下所列：
+ VIEW DEFINITION
+ VIEW DATABASE STATE

`VIEW DEFINITION` 權限可讓擁有公開存取權的使用者查看物件定義。DMS 結構描述轉換會使用 `VIEW DATABASE STATE` 權限來檢查 SQL Server Enterprise 版的功能。

對您要轉換其結構描述的每個資料庫重複授予。

此外，請授與 `master` 資料庫的下列權限：
+ VIEW SERVER STATE
+ VIEW ANY DEFINITION

DMS 結構描述轉換會使用 `VIEW SERVER STATE` 權限來收集伺服器設定和組態。請確定您已授與檢視資料提供者的 `VIEW ANY DEFINITION` 權限。

若要讀取 Microsoft Analysis Services 的相關資訊，請在 `master` 資料庫上執行下列命令。

```
EXEC master..sp_addsrvrolemember @loginame = N'<user_name>', @rolename = N'sysadmin'
```

在上述範例中，請將 `<user_name>` 預留位置替換為您先前授與必要權限的使用者名稱。

若要讀取 SQL Server 代理程式的相關資訊，請將您的使用者新增至 SQLAgentUser 角色。在 `msdb` 資料庫上執行下列命令。

```
EXEC sp_addrolemember <SQLAgentRole>, <user_name>;
```

在上述範例中，請將 `<SQLAgentRole>` 預留位置替換為 SQL Server 代理程式角色的名稱。接著將 `<user_name>` 預留位置替換為您先前授與必要權限的使用者名稱。如需詳細資訊，請參閱《*Amazon RDS 使用者指南*》中的「[將使用者新增至 SQLAgentUser 角色](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.SQLServer.CommonDBATasks.Agent.html#SQLServerAgent.AddUser)」。

若要偵測日誌傳送，請授與 `msdb` 資料庫的 `SELECT on dbo.log_shipping_primary_databases` 權限。

若要使用資料定義語言 (DDL) 複寫的通知方法，請授與來源資料庫的 `RECEIVE ON <schema_name>.<queue_name>` 權限。在此範例中，請將 `<schema_name>` 預留位置替換為您資料庫的結構描述名稱。接著將 `<queue_name>` 預留位置替換為佇列資料表的名稱。

# 使用 Oracle 資料庫作為 DMS 結構描述轉換中的來源
<a name="data-providers-oracle"></a>

您可以在 DMS 結構描述轉換中使用 Oracle 資料庫作為遷移來源。

若要連線至 Oracle 資料庫，請使用 Oracle 系統 ID (SID)。若要尋找 Oracle SID，請提交以下查詢至您的 Oracle 資料庫：

```
SELECT sys_context('userenv','instance_name') AS SID FROM dual;
```

您可以使用 DMS 結構描述轉換，將資料庫程式碼物件從 Oracle 資料庫轉換至下列目標：
+ Aurora MySQL
+ Aurora PostgreSQL
+ RDS for MySQL
+ RDS for PostgreSQL

如需受支援 Oracle 資料庫版本的相關資訊，請參閱：[DMS 結構描述轉換的來源資料提供者](CHAP_Introduction.Sources.md#CHAP_Introduction.Sources.SchemaConversion)。

如需使用 DMS 結構描述轉換搭配來源 Oracle 資料庫的詳細資訊，請參閱 [Oracle 到 PostgreSQL 遷移的逐步解說](https://docs.aws.amazon.com/dms/latest/sbs/schema-conversion-oracle-postgresql.html)。

## 將 Oracle 作為來源資料庫的權限
<a name="data-providers-oracle-permissions"></a>

將 Oracle 作為的必要權限如下：
+ CONNECT 
+ SELECT\$1CATALOG\$1ROLE 
+ SELECT ANY DICTIONARY 
+ SELECT ON SYS.ARGUMENT\$1

# 使用 Oracle 資料倉儲資料庫作為 DMS 結構描述轉換中的來源
<a name="data-providers-oracle-dw"></a>

您可以在 DMS 結構描述轉換中使用 Oracle 資料倉儲資料庫做為遷移來源，將資料庫程式碼物件和應用程式程式碼轉換為 Amazon Redshift。

如需受支援 Oracle 資料庫版本的相關資訊，請參閱 [DMS 結構描述轉換的來源資料提供者](CHAP_Introduction.Sources.md#CHAP_Introduction.Sources.SchemaConversion)。如需使用 DMS 結構描述轉換搭配來源 Oracle 資料庫的詳細資訊，請參閱 [Oracle 到 PostgreSQL 遷移的逐步解說](https://docs.aws.amazon.com/dms/latest/sbs/schema-conversion-oracle-postgresql.html)。

## 使用 Oracle 資料倉儲資料庫做為來源的權限
<a name="data-providers-oracle-dw-privileges"></a>

將 Oracle 資料倉儲做為來源的必要權限如下：
+ CONNECT
+ SELECT\$1CATALOG\$1ROLE
+ SELECT ANY DICTIONARY

## Oracle 資料倉儲到 Amazon Redshift 轉換設定
<a name="data-providers-oracle-dw-settings"></a>

如需有關編輯 DMS 結構描述轉換設定的詳細資訊，請參閱 [指定遷移專案的資料架構轉換設定](schema-conversion-settings.md)。

Oracle 資料倉儲轉換到 Amazon Redshift 的設定包括下列項目：
+ **在已轉換的程式碼中加入所選嚴重性及更高嚴重性之動作項目的註解**：此設定會限制已轉換程式碼中動作項目的註解數目。DMS 會在已轉換的程式碼中，針對所選嚴重性及更高嚴重性的動作項目新增註解。

  例如，若要將已轉換程式碼中的註解數量降到最低，請選擇**僅限錯誤**。若要在已轉換的程式碼中包含所有動作項目的註解，請選擇**所有訊息**。
+ **目標 Amazon Redshift 叢集的資料表數目上限**：此設定可用於設定 DMS 能套用至目標 Amazon Redshift 叢集的資料表數目上限。Amazon Redshift 的配額會限制不同叢集節點類型的使用資料表。此設定支援下列值：
  + **自動**：DMS 會根據節點類型決定要套用至目標 Amazon Redshift 叢集的資料表數目。
  + **設定值**：手動設定資料表數目。

  DMS 會轉換所有的來源資料表，即使資料表數目超過 Amazon Redshift 叢集所能存放的數量也一樣。DMS 會將轉換後的程式碼存放在專案中，而不會將其套用至目標資料庫。如果您在套用轉換後的程式碼時達到資料表的 Amazon Redshift 叢集配額，DMS 便會顯示警告訊息。此外，DMS 會將資料表套用至您的目標 Amazon Redshift 叢集，直到資料表數量達到上限為止。

  如需有關 Amazon Redshift 資料表配額的資訊，請參閱 [Amazon Redshift 中的配額和限制](https://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)。
+ **使用 UNION ALL 檢視**：此設定可讓您設定 DMS 為單一來源資料表建立的目標資料表數目上限。

  Amazon Redshift 不支援資料表分割。為了模擬資料表分割並加快查詢執行速度，DMS 可以將來源資料表的每個分割區遷移到 Amazon Redshift 中的個別資料表。然後，DMS 會建立檢視表，其中包含來自其建立的所有目標資料表的資料。

  DMS 會自動判斷來源資料表中的分割區數目。視來源資料表分割的類型而定，此數字可能會超過可套用至 Amazon Redshift 叢集之資料表的配額。若要避免達到此配額，請輸入 DMS 可為單一來源資料表的分割區建立的目標資料表數目上限。預設選項為 368 個資料表，代表用於一年 366 天的分割區，外加兩個用於 NO RANGE 和 UNKNOWN 分割區的資料表。
+ **您在 Oracle 程式碼中使用的日期類型格式元素與 Amazon Redshift 中的日期時間格式字串類似**：使用此設定轉換資料類型格式化函數，例如 `TO_CHAR`、`TO_DATE` 及具有 Amazon Redshift 不支援的日期時間格式元素的 `TO_NUMBER`。根據預設，DMS 會使用擴充功能套件函式，在已轉換的程式碼中模擬這些不受支援的格式元素。

  Oracle 中的日期時間格式模型包含的元素,比 Amazon Redshift 中的日期時間格式字串更多。如果原始程式碼只包含 Amazon Redshift 支援的日期時間格式元素，請設定此值以避免在轉換後的程式碼中使用延伸套件函數。避免延伸函數使轉換後的程式碼執行得更快。
+ **您在 Oracle 程式碼中使用的數值格式元素，與 Amazon Redshift 中的數值格式字串類似：**使用此設定可轉換 Amazon Redshift 不支援的數值資料類型格式化函數。根據預設，DMS 會使用擴充功能套件函式，在已轉換的程式碼中模擬這些不受支援的格式元素。

  Oracle 中的數字格式模型包含比 Amazon Redshift 中的數字格式字串更多的元素。如果原始程式碼僅包含 Amazon Redshift 支援的數字格式元素，請設定此值以避免在已轉換的程式碼中使用延伸套件功能。避免延伸函數使轉換後的程式碼執行得更快。
+ **使用 NVL 函數來模擬 Oracle LEAD 和 LAG 函數的行為**：如果您的原始程式碼不使用和 `LEAD` 及 `LAG` 函數中的偏移量的預設值，DMS 即會使用該 `NVL` 函數模擬這些函數。依預設，DMS 會針對每次使用 `LEAD` 和 `LAG` 函數引發行動項目。使用 `NVL` 模擬這些函數，可以使轉換後的程式碼執行得更快。
+ **模擬主索引鍵和唯一金鑰的行為**：設定此設定值可讓 DMS 模擬目標 Amazon Redshift 叢集上主索引鍵和唯一金鑰限制的行為。Amazon Redshift 不會強制執行主要和唯一金鑰限制，而且僅將其用於資訊目的。如果您的原始程式碼使用主要或唯一索引鍵條件約束，請設定此設定值以確保 DMS 模擬其行為。
+ **使用壓縮編碼**：設定此設定值以將壓縮編碼套用至 Amazon Redshift 資料表資料欄。DMS 會使用預設的 Redshift 演算法自動指派壓縮編碼。如需壓縮編碼的相關資訊，請參閱《*Amazon Redshift 資料庫開發人員指南*》中的[壓縮編碼](https://docs.aws.amazon.com/redshift/latest/dg/c_Compression_encodings.html)。

  根據預設，Amazon Redshift 不會將壓縮套用至定義為排序和分佈索引鍵的資料欄。若要將壓縮套用至這些資料欄，請設定**使用 KEY 欄的壓縮編碼**。您只能在設定**使用壓縮編碼**時選取此選項。

# 在 DMS 結構描述轉換中使用 PostgreSQL 資料庫做為來源
<a name="sc-data-providers-postgresql"></a>

您可以在 DMS 結構描述轉換中使用 PostgreSQL 資料庫做為遷移來源。

您可以使用 DMS 結構描述轉換，將資料庫程式碼物件從 PostgreSQL 資料庫轉換為下列目標：
+ MySQL
+ Aurora MySQL

PostgreSQL 做為來源所需的權限如下：
+ CONNECT ON DATABASE <database\$1name>
+ USAGE ON SCHEMA <database\$1name>
+ SELECT ON ALL TABLES IN SCHEMA <database\$1name>
+ SELECT ON ALL SEQUENCES IN SCHEMA <database\$1name>

# 在 DMS 結構描述轉換中使用 MySQL 資料庫做為來源
<a name="sc-data-providers-mysql"></a>

您可以在 DMS 結構描述轉換中使用 MySQL 資料庫做為遷移來源。

您可以使用 DMS 結構描述轉換，將資料庫程式碼物件從 MySQL 資料庫轉換為下列目標：
+ PostgreSQL
+ Aurora PostgreSQL

做為來源的 MySQL 所需的權限如下：
+ `SELECT ON *.*`
+ `SHOW VIEW ON *.*`

## MySQL 到 PostgreSQL 轉換設定
<a name="sc-data-providers-mysql-settings"></a>

如需有關編輯 DMS 結構描述轉換設定的詳細資訊，請參閱 [指定遷移專案的資料架構轉換設定](schema-conversion-settings.md)。

MySQL 到 PostgreSQL 轉換設定包括下列項目：
+ **轉換後 SQL 程式碼中的註解**：設定此設定可針對所選嚴重性及更高嚴重性的動作項目，在轉換後的程式碼中新增註解。

  有效值：
  + **僅限錯誤**
  + **錯誤和警告**
  + **所有訊息**

# 在 DMS 結構描述轉換中使用適用於 Linux、UNIX 和 Windows 資料庫的 IBM Db2 做為來源
<a name="sc-data-providers-db2luw"></a>

您可以在 DMS 結構描述轉換中使用適用於 Linux、UNIX 和 Windows 資料庫的 IBM Db2 做為遷移來源。

您可以使用 DMS 結構描述轉換，將適用於 Linux、UNIX 和 Windows Database 的 Db2 資料庫程式碼物件轉換為下列目標：
+ Aurora PostgreSQL
+ Amazon RDS for PostgreSQL

如需 Linux、UNIX 和 Windows 資料庫版本支援的 IBM Db2 相關資訊，請參閱 [DMS 結構描述轉換的來源資料提供者](CHAP_Introduction.Sources.md#CHAP_Introduction.Sources.SchemaConversion)

## 將適用於 Linux、UNIX 和 Windows 的 IBM Db2 做為來源資料庫的先決條件
<a name="sc-data-providers-db2luw-prereq"></a>

您可以使用下列程式碼範例來檢查 Linux、UNIX 和 Windows 資料庫的來源 IBM Db2 版本：

```
SELECT SERVICE_LEVEL FROM SYSIBMADM.ENV_INST_INFO;
```

## 來源資料庫適用於 Linux、UNIX 和 Windows 的 IBM Db2 權限
<a name="sc-data-providers-db2luw-privileges"></a>

連線至適用於 Linux、UNIX 和 Windows 資料庫的 Db2 以及讀取系統目錄和資料表所需的權限如下：

```
EXECUTE ON PACKAGE NULLID.SYSSH200
EXECUTE ON PACKAGE NULLID.SQLC2O26 /* If Db2 LUW runs on a Linux operating system */
EXECUTE ON FUNCTION SYSPROC.ENV_GET_INST_INFO
EXECUTE ON FUNCTION SYSPROC.AUTH_LIST_AUTHORITIES_FOR_AUTHID
EXECUTE ON FUNCTION SYSPROC.AUTH_LIST_GROUPS_FOR_AUTHID
EXECUTE ON FUNCTION SYSPROC.AUTH_LIST_ROLES_FOR_AUTHID
SELECT ON SYSIBMADM.ENV_INST_INFO
SELECT ON SYSIBMADM.ENV_SYS_INFO
SELECT ON SYSIBMADM.PRIVILEGES
SELECT ON SYSCAT.ATTRIBUTES
SELECT ON SYSCAT.CHECKS
SELECT ON SYSCAT.COLIDENTATTRIBUTES
SELECT ON SYSCAT.COLUMNS
SELECT ON SYSCAT.DATAPARTITIONEXPRESSION
SELECT ON SYSCAT.DATAPARTITIONS
SELECT ON SYSCAT.DATATYPEDEP
SELECT ON SYSCAT.DATATYPES
SELECT ON SYSCAT.HIERARCHIES
SELECT ON SYSCAT.INDEXCOLUSE
SELECT ON SYSCAT.INDEXES
SELECT ON SYSCAT.INDEXPARTITIONS
SELECT ON SYSCAT.KEYCOLUSE
SELECT ON SYSCAT.MODULEOBJECTS
SELECT ON SYSCAT.MODULES
SELECT ON SYSCAT.NICKNAMES
SELECT ON SYSCAT.PERIODS
SELECT ON SYSCAT.REFERENCES
SELECT ON SYSCAT.ROUTINEPARMS
SELECT ON SYSCAT.ROUTINES
SELECT ON SYSCAT.ROWFIELDS
SELECT ON SYSCAT.SCHEMATA
SELECT ON SYSCAT.SEQUENCES
SELECT ON SYSCAT.TABCONST
SELECT ON SYSCAT.TABLES
SELECT ON SYSCAT.TRIGGERS
SELECT ON SYSCAT.VARIABLEDEP
SELECT ON SYSCAT.VARIABLES
SELECT ON SYSCAT.VIEWS
SELECT ON SYSIBM.SYSDUMMY1
```

# 在 DMS 結構描述轉換中使用 IBM Db2 for z/OS 資料庫作為來源
<a name="sc-data-providers-db2zos"></a>

您可以在 DMS 結構描述轉換中使用 z/OS 資料庫的 IBM Db2 做為遷移來源。

您可以使用 DMS 結構描述轉換，將資料庫程式碼物件從 z/OS 資料庫的 Db2 轉換為下列目標：
+ Amazon RDS for Db2
+ Amazon RDS for PostgreSQL
+ Aurora PostgreSQL

如需 z/OS 資料庫版本支援的 IBM Db2 的詳細資訊，請參閱 [DMS 結構描述轉換的來源資料提供者](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Introduction.Sources.html#CHAP_Introduction.Sources.SchemaConversion)。

## IBM Db2 for z/OS 做為來源資料庫的先決條件
<a name="sc-data-providers-db2zos-prereq"></a>

IBM Db2 for z/OS 版本 12 函數層級 100 資料庫版本不支援 IBM Db2 for z/OS 版本 12 的大多數新功能。此資料庫版本支援回溯至 Db2 第 11 版，以及與 Db2 第 11 版共用資料。為了避免轉換 Db2 第 11 版不支援的功能，建議您將 IBM Db2 用於 z/OS 資料庫函數層級 500 或更高版本，做為 AWS DMS SC 的來源。

您可以使用下列程式碼範例來檢查 z/OS 資料庫的來源 IBM Db2 版本：

```
SELECT GETVARIABLE('SYSIBM.VERSION') as version FROM SYSIBM.SYSDUMMY1;
```

請確定此程式碼傳回版本 `DSN12015` 或更新版本。

您可以使用下列程式碼範例來檢查來源 IBM Db2 中 z/OS 資料庫`APPLICATION COMPATIBILITY`的特殊註冊值：

```
SELECT CURRENT APPLICATION COMPATIBILITY as version FROM SYSIBM.SYSDUMMY1;
```

請確定此程式碼傳回版本 `V12R1M500` 或更新版本。

## z/OS 作為來源資料庫的 IBM Db2 權限
<a name="sc-data-providers-db2zos-privileges"></a>

連線至 z/OS 資料庫和讀取系統目錄和資料表的 Db2 所需的權限如下：

```
SELECT ON SYSIBM.LOCATIONS
SELECT ON SYSIBM.SYSCHECKS
SELECT ON SYSIBM.SYSCOLUMNS
SELECT ON SYSIBM.SYSDATABASE
SELECT ON SYSIBM.SYSDATATYPES
SELECT ON SYSIBM.SYSDUMMY1
SELECT ON SYSIBM.SYSFOREIGNKEYS
SELECT ON SYSIBM.SYSINDEXES
SELECT ON SYSIBM.SYSKEYCOLUSE
SELECT ON SYSIBM.SYSKEYS
SELECT ON SYSIBM.SYSKEYTARGETS
SELECT ON SYSIBM.SYSJAROBJECTS
SELECT ON SYSIBM.SYSPACKAGE
SELECT ON SYSIBM.SYSPARMS
SELECT ON SYSIBM.SYSRELS
SELECT ON SYSIBM.SYSROUTINES
SELECT ON SYSIBM.SYSSEQUENCES
SELECT ON SYSIBM.SYSSEQUENCESDEP
SELECT ON SYSIBM.SYSSYNONYMS
SELECT ON SYSIBM.SYSTABCONST
SELECT ON SYSIBM.SYSTABLES
SELECT ON SYSIBM.SYSTABLESPACE
SELECT ON SYSIBM.SYSTRIGGERS
SELECT ON SYSIBM.SYSVARIABLES
SELECT ON SYSIBM.SYSVIEWS
```

# 在 AWS DMS 結構描述轉換中使用 SAP ASE (Sybase ASE) 資料庫作為來源
<a name="dm-data-providers-source-sybase-ASE"></a>

您可以使用 SAP ASE (Sybase ASE) 資料庫做為 DMS 結構描述轉換中的遷移來源。

您可以使用 DMS 結構描述轉換，將資料庫程式碼物件從 SAP ASE (Sybase ASE) 資料庫轉換為下列目標：
+ Aurora PostgreSQL
+ RDS for PostgreSQL

如需支援的 SAP ASE (Sybase ASE) 資料庫版本的相關資訊，請參閱 [DMS 結構描述轉換的來源資料提供者](CHAP_Introduction.Sources.md#CHAP_Introduction.Sources.SchemaConversion)

## SAP ASE (Sybase ASE) 做為來源資料庫的權限
<a name="dm-data-providers-source-sybase-ASE.privileges"></a>

使用 SAP ASE (Sybase ASE) 做為來源資料庫時，需要下列權限：
+ 使用主伺服器
+ 在 dbo.spt\$1values 上選取
+ 在 asehostname 上選取

針對要遷移的每個資料庫，授予下列權限：
+ USE db\$1name *（將 db\$1name 取代為要遷移的資料庫名稱）*
+ 在 dbo.sysusers 上選取
+ 在 dbo.sysobjects 上選取
+ 在 dbo.sysindexes 上選取
+ 在 dbo.syscolumns 上選取
+ 在 dbo.sysreferences 上選取
+ 在 dbo.syscomments 上選取
+ 在 dbo.syspartitions 上選取
+ 在 dbo.syspartitionkeys 上選取
+ 在 dbo.sysconstraints 上選取
+ 在 dbo.systypes 上選取
+ 在 dbo.sysqueryplans 上選取