

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在 DMS 架构转换中使用 Amazon Redshift 集群作为目标
<a name="data-providers-redshift"></a>

您可以使用 Amazon Redshift 数据库作为 DMS 架构转换的迁移目标。有关支持的目标数据库的信息，请参阅[DMS 架构转换的目标数据提供程序](CHAP_Introduction.Targets.md#CHAP_Introduction.Targets.SchemaConversion)。

## 将 Amazon Redshift 作为目标需具备的权限
<a name="data-providers-redshift-privileges"></a>

使用 Amazon Redshift 作为 DMS 架构转换目标需要具备以下权限：
+ **CREATE ON DATABASE**：允许 DMS 在数据库中创建新架构。
+ **CREATE ON SCHEMA**：允许 DMS 在数据库架构中创建对象。
+ **GRANT USAGE ON LANGUAGE**：允许 DMS 在数据库中创建新函数和过程。
+ **GRANT SELECT ON ALL TABLES IN SCHEMA pg\$1catalog**：为用户提供有关 Amazon Redshift 集群的系统信息。
+ **GRANT SELECT ON pg\$1class\$1info**：为用户提供有关表分配方式的信息。

您可以使用以下代码示例创建数据库用户并授予权限。将示例值替换为您的值。

```
CREATE USER user_name PASSWORD your_password;
GRANT CREATE ON DATABASE db_name TO user_name;
GRANT CREATE ON SCHEMA schema_name TO user_name;
GRANT USAGE ON LANGUAGE plpythonu TO user_name;
GRANT USAGE ON LANGUAGE plpgsql TO user_name;
GRANT SELECT ON ALL TABLES IN SCHEMA pg_catalog TO user_name;
GRANT SELECT ON pg_class_info TO user_name;
GRANT SELECT ON sys_serverless_usage TO user_name;
GRANT SELECT ON pg_database_info TO user_name;
GRANT SELECT ON pg_statistic TO user_name;
```

对每个目标架构重复 `GRANT CREATE ON SCHEMA` 操作，您将在其中应用转换后的代码或迁移数据。

您可以在目标 Amazon Redshift 数据库上应用扩展包。扩展包是一个附加模块，用于模拟将对象转换为 Amazon Redshift 时所需的源数据库函数。有关更多信息，请参阅 [在 DMS 架构转换中使用扩展包](extension-pack.md)。