使用查询编辑器查询数据库 - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

使用查询编辑器查询数据库

使用查询编辑器是在由 Amazon Redshift 集群托管的数据库上运行查询的最简单方法。创建集群后,可以使用 Amazon Redshift 控制台上的查询编辑器立即运行查询。

以下集群节点类型支持查询编辑器:

  • DC1.8xlarge

  • DC2.large

  • DC2.8xlarge

  • DS2.8xlarge

  • RA3.xlplus

  • RA3.4xlarge

  • RA3.16xlarge

使用查询编辑器可以执行以下操作:

  • 运行单个 SQL 语句查询。

  • 将大小为 100 MB 的结果集下载到一个逗号分隔值 (CSV) 文件。

  • 保存查询以供重用。您无法在欧洲(巴黎)区域、亚太区域 (大阪当地)、亚太地区(香港)区域或中东(巴林)区域中保存查询。

  • 查看用户定义表的查询执行详细信息。

  • 计划查询在将来运行。

查询编辑器注意事项

在 Amazon Redshift 控制台上使用查询编辑器时,请注意以下注意事项:

  • 最多 50 个用户可以同时使用查询编辑器连接到一个集群。

  • 连接到集群的最大用户数包括通过查询编辑器连接的用户数。

  • 最多可以有 50 个工作负载管理 (WLM) 查询槽同时处于活动状态。有关查询槽的更多信息,请参阅实施工作负载管理

  • 查询编辑器仅运行可在 10 分钟内完成的短查询。

  • 查询结果集分页为每页 100 行。

  • 您不能将查询编辑器与增强型 VPC 路由一起使用。有关更多信息,请参阅Amazon Redshift 增强型 VPC 路由

  • 不能在查询编辑器中使用事务处理。有关事务的更多信息,请参阅 https://docs.amazonaws.cn/redshift/latest/dg/r_BEGIN.html 中的 BEGINAmazon Redshift Database Developer Guide。

  • 您可以保存最长为 3000 个字符的查询。

启用对查询编辑器的访问

要访问查询编辑器,您需要相应权限。要启用访问权限,请将 AWS 托管策略 AmazonRedshiftQueryEditorAmazonRedshiftReadOnlyAccess for AWS Identity and Access Management (IAM) 权限附加到用于访问集群的 IAM 用户。

如果您已创建 IAM 用户来访问 Amazon Redshift,则可以将 AmazonRedshiftQueryEditorAmazonRedshiftReadOnlyAccess 策略附加到该用户。如果您尚未创建 IAM 用户,则可以创建一个,然后将策略附加到 IAM 用户。

注意

AWS 托管策略 AmazonRedshiftQueryEditor 允许操作 redshift:GetClusterCredentials,默认情况下该操作向数据库用户提供对数据库的超级用户访问权限。要限制访问,您可以执行以下操作之一:

  • 创建自定义策略,该策略允许调用 redshift:GetClusterCredentials 并将资源限制为 DbUser 的给定值。

  • 为用户添加一个策略,以拒绝对 redshift:GetClusterCredentials 的权限,然后要求用户使用临时凭证登录查询编辑器。例如,拒绝策略可能类似于以下策略。

    { "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": "redshift:GetClusterCredentials", "Resource": "*" } }

有关更多信息,请参阅创建具有呼叫权限的IAM角色或用户角色或用户 GetClusterCredentials

附加查询编辑器所需的 IAM 策略

  1. 登录 AWS 管理控制台 并通过以下网址打开 IAM 控制台 https://console.amazonaws.cn/iam/

  2. 选择 Users (用户)

  3. 选择需要访问查询编辑器的用户。

  4. 选择 Add permissions (添加权限)

  5. 选择直接附加现有策略

  6. 对于 Policy names (策略名称),选择 AmazonRedshiftQueryEditorAmazonRedshiftReadOnlyAccess

  7. 选择 Next: (下一步:)。 审核

  8. 选择 Add permissions (添加权限)

使用查询编辑器

在以下示例中,您使用查询编辑器执行以下任务:

  • 运行 SQL 命令。

  • 查看查询执行详细信息。

  • 保存查询。

  • 下载查询结果集。

要完成以下示例,您需要现有 Amazon Redshift 集群。如果您没有集群,请通过执行创建集群中所述的过程来创建一个集群。

注意

Amazon Redshift 有新的控制台可用。根据您使用的控制台,选择新控制台原始控制台说明。默认情况下会打开新控制台说明。

在 Amazon Redshift 控制台上使用查询编辑器

  1. 登录 AWS 管理控制台并通过以下网址打开 Amazon Redshift 控制台:https://console.amazonaws.cn/redshift/

  2. 在导航菜单上,选择 EDITOR (编辑器),然后连接到集群中的数据库。

  3. 对于架构,选择公有以基于该架构创建新表。

  4. 在查询编辑器窗口中输入以下内容,然后选择 Run (运行) 以创建新表。

    create table shoes( shoetype varchar (10), color varchar(10));
  5. 选择 Clear (清除)

  6. 在查询编辑器窗口中输入以下命令,然后选择 Run (运行) 以向表中添加行。

    insert into shoes values ('loafers', 'brown'), ('sandals', 'black');
  7. 选择 Clear (清除)

  8. 在查询编辑器窗口中输入以下命令,然后选择 Run (运行) 以查询新表。

    select * from shoes;

    Query results (查询结果) 将显示相应结果。

    Shoe 类型 颜色

    sandals

    black

    loafers

    brown

  9. 选择 Execution (执行) 以查看运行详细信息。

  10. 选择 Data (数据),然后选择 Export (导出) 以便以文件形式下载查询结果。

使用查询编辑器

  1. 登录 AWS 管理控制台并通过以下网址打开 Amazon Redshift 控制台:https://console.amazonaws.cn/redshift/

  2. 在导航窗格中,选择查询编辑器

  3. 对于架构,选择公有以基于该架构创建新表。

  4. 在查询编辑器窗口中输入以下内容,然后选择 Run query (运行查询) 以创建新表。

    create table shoes( shoetype varchar (10), color varchar(10));
  5. 选择 Clear (清除)

  6. 在查询编辑器窗口中输入以下命令,然后选择 Run query (运行查询) 以向表中添加行。

    insert into shoes values ('loafers', 'brown'), ('sandals', 'black');
  7. 选择 Clear (清除)

  8. 在查询编辑器窗口中输入以下命令,然后选择 Run query (运行查询) 以查询新表。

    select * from shoes;

    您应该看到以下结果。

  9. 选择 View execution (查看执行) 以查看执行详细信息。

  10. 选择 Download CSV (下载 CSV) 以将查询结果作为 CSV 文件下载。