

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://www.amazonaws.cn/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# 在 Amazon Redshift 中创建数据共享
创建数据共享

数据共享是数据库对象、权限和使用者的逻辑容器。使用者是您账户和其它 Amazon Web Services 账户中的 Amazon Redshift 预置集群或 Amazon Redshift Serverless 命名空间。每个数据共享都与在其中创建的数据库相关联，并且只能添加该数据库中的对象。作为生产者管理员，您可以按照以下过程之一，在控制台上和使用 SQL 创建数据共享。

------
#### [ Console ]

在控制台上，您可以从集群或命名空间详细信息页面中的**数据共享**选项卡创建数据共享。创建数据共享后，您可以作为使用者管理员从使用者上的数据共享中创建数据库。

1. 登录到 Amazon Web Services 管理控制台并打开 Amazon Redshift 控制台，网址：[https://console.aws.amazon.com/redshiftv2/](https://console.amazonaws.cn/redshiftv2/)。

1. 在导航菜单上，选择**集群**，然后选择您的集群。此时会显示集群详细信息页面。

1. 在集群或命名空间详细信息页面中，如果您没有数据库连接，则从**数据共享**选项卡上的**数据共享**部分中，连接到数据库。在**在我的账户中创建的数据共享**部分中，选择**创建数据共享**。此时会显示**创建数据共享**页面。

1. 选择**创建数据共享**。您只能从本地数据库创建数据共享。如果您未连接到数据库，则会显示**连接到数据库**页面。按[连接到数据库](connect-database-console.md)中的步骤连接到数据库。如果最近存在连接，则会显示**创建数据共享**页面。

1. 在**数据共享信息**部分，选择以下选项之一：
   + 选择**数据共享**来创建数据共享，以便跨不同的 Amazon Redshift 数据仓库（预置集群或无服务器端点）或在同一个 Amazon Web Services 账户或不同 Amazon Web Services 账户中共享数据，从而进行读取或写入。
   + 选择 **Amazon Web Services Data Exchange 数据共享**创建数据共享，以通过 Amazon Web Services Data Exchange 许可您的数据。

1. 指定**数据共享名称**、**数据库名称**和**可公开访问**的值。更改数据库名称时，请建立新的数据库连接。

1. 使用**范围内的权限**或**直接权限**部分将对象添加到您的数据共享。要向数据共享中添加对象，请参阅[在 Amazon Redshift 中创建数据共享](#writes-creating-datashare)。

1. 在**数据使用者**部分，可以选择发布到 Amazon Redshift，或者发布到 Amazon Glue Data Catalog，这将开始通过 Lake Formation 共享数据的过程。将数据共享发布到 Amazon Redshift，即意味着与另一个充当使用者的命名空间或 Amazon Redshift 账户共享数据。
**注意**  
创建数据共享后，您无法编辑配置以发布到其他选项。

1. 选择**创建数据共享**。

------
#### [ SQL ]

下面的命令将创建一个数据共享：

```
CREATE DATASHARE salesshare;
```

在创建数据共享时，每个数据共享都与一个数据库相关联。只有该数据库中的对象才能在该数据共享中共享。可以在具有相同或不同粒度对象的同一数据库上创建多个数据共享。集群可以创建的数据共享数量没有限制。您还可以使用 Amazon Redshift 控制台创建数据共享。有关更多信息，请参阅 [CREATE DATASHARE](r_CREATE_DATASHARE.md)。

还可以在创建过程中控制数据共享的安全限制。以下示例显示支持具有公有 IP 访问权限的使用者读取数据共享。

```
CREATE DATASHARE my_datashare [PUBLICACCESSIBLE = TRUE];
```

设置 PUBLICACCESSIBLE = TRUE 允许使用者从可公开访问的集群和预置工作组中查询您的数据共享。如果您不想允许查询，请将其省略或明确设置为 false。

您可以在创建数据共享后修改有关使用者类型的属性。例如，您可以定义希望使用给定数据共享中的数据的集群不能公开访问。来自不符合数据共享中指定的安全限制的使用者集群的查询将在查询运行时被拒绝。有关更多信息，请参阅 [ALTER DATASHARE](r_ALTER_DATASHARE.md)。

------