Amazon Redshift
管理指南 (API Version 2012-12-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

AWS 命令行界面入门

为帮助您开始使用命令行界面,本部分介绍了如何为 Amazon Redshift 群集执行基本管理任务。这些任务与 Amazon Redshift 入门 中的任务非常相似,不过前者专注于命令行界面,而后者专注于 Amazon Redshift 控制台。

本部分将引导您完成创建群集、创建数据库表、上传数据和测试查询的过程。您将使用 Amazon Redshift CLI 配置群集并授予必要的访问权限。然后,您将使用 SQL Workbench 客户端连接到群集、创建示例表、上传示例数据并执行测试查询。

第 1 步:准备工作

如果您还没有 AWS 账户,则必须先注册一个。然后,您需要设置 Amazon Redshift 命令行工具。最后,您需要下载客户端工具和驱动程序才能连接到您的群集。

步骤 1.1:注册 AWS 账户

有关注册 AWS 用户账户的信息,请转到 Amazon Redshift 入门

步骤 1.2:下载并安装 AWS 命令行界面 (CLI)

如果您未安装 AWS 命令行界面,请参阅设置 Amazon Redshift CLI

步骤 1.3:下载客户端工具和驱动程序

您可以使用任何 SQL 客户端工具并利用 PostgreSQL JDBC 或 ODBC 驱动程序连接到 Amazon Redshift 群集。如果您当前未安装此类软件,则可以使用 SQL Workbench,这是一款免费的跨平台工具,可用来查询 Amazon Redshift 群集中的表。本部分的示例将使用 SQL Workbench 客户端。

要下载 SQL Workbench 和 PostgreSQL 驱动程序,请转到 Amazon Redshift Getting Started Guide

步骤 2:启动群集

现在,您可以使用 AWS 命令行界面 (CLI) 启动群集了。

重要

您即将启动的群集将是活跃的(且不在沙盒中运行)。您需要为该群集支付标准的使用费,直到您终止该群集。有关定价信息,请转到 Amazon Redshift 定价页面

如果您一鼓作气完成此处说明的练习并在使用完毕后终止群集,则产生的全部费用将非常少。

create-cluster 命令有大量参数。在本练习中,您将使用下表中所述的参数值。在生产环境中创建群集之前,我们建议您查看所有的必需参数和可选参数,确保群集配置符合您的要求。有关更多信息,请参阅 create-cluster

参数名称 本练习的参数值
Cluster Identifier

examplecluster

Master Username

masteruser

Master Password

TopSecret1

节点类型 ds1.xlarge 或您想要使用的节点大小。有关更多信息,请参阅 Amazon Redshift 中的群集和节点
群集类型 single-node

要创建群集,请键入以下命令:

Copy
aws redshift create-cluster --cluster-identifier examplecluster --master-username masteruser --master-user-password TopSecret1 --node-type ds1.xlarge --cluster-type single-node

完成群集创建过程需要几分钟的时间。要查看状态,请键入以下命令:

Copy
aws redshift describe-clusters --cluster-identifier examplecluster

结果与如下显示类似:

Copy
{ "Clusters": [ { ...output omitted... "ClusterStatus": "creating", "ClusterIdentifier": "examplecluster", ...output omitted... }

ClusterStatus 字段从 creating 变为 available 时,您的群集就可供使用了。

在下一个步骤中,您将授予访问权限,以便连接到群集。

步骤 3:为群集访问授权入站流量

您必须明确授予对客户端的入站访问权限才能连接到群集。您的客户端可以是 Amazon EC2 实例或外部计算机。

在上一个步骤中创建了群集后,由于您未指定安全组,因此您将默认群集安全组与该群集相关联。默认群集安全组不包含对群集授权任何入站流量的规则。要访问新群集,您必须针对流向群集安全组的入站流量添加相关规则(称为传入规则)。

Internet 上运行的应用程序的传入规则

如果您要通过 Internet 访问群集,则需要授予一个无类别域间路由 IP (CIDR/IP) 地址范围。在本示例中,我们将使用 192.0.2.0/24 的 CIDR/IP 规则;您需要修改此范围以反映您的实际 IP 地址和网络掩码。

要允许网络进入群集,请键入以下命令:

Copy
aws redshift authorize-cluster-security-group-ingress --cluster-security-group-name default --cidrip 192.0.2.0/24

EC2 实例的传入规则

如果要通过 Amazon EC2 实例访问群集,您将需要授权 Amazon EC2 安全组。为此,您需要指定安全组名称,以及 EC2 安全组所有者的 12 位账号。

您可以使用 Amazon EC2 控制台来确定与您的实例关联的 EC2 安全组:

要查找您的 AWS 账号,请转到 http://www.amazonaws.cn/,并登录“My Account”页面。您的 AWS 账号显示在该页面的右上角。

在本示例中,我们将使用 myec2securitygroup 作为 Amazon EC2 安全组名称,并使用 123456789012 作为账号。您可以根据自己的需要修改这些内容。

要允许网络进入群集,请键入以下命令:

Copy
aws redshift authorize-cluster-security-group-ingress --cluster-security-group-name default --ec2-security-group-name myec2securitygroup --ec2-security-group-owner 123456789012

步骤 4:连接到群集

现在您已经为默认群集安全组添加了传入规则,从特定 CIDR/IP 或 EC2 安全组到 examplecluster 的传入连接已经获得授权。

现在,您可以连接到群集了。

有关连接到群集的信息,请转到 Amazon Redshift Getting Started Guide

步骤 5:创建表、上传数据和尝试示例查询

有关创建表、上传数据和发布查询的信息,请转到 Amazon Redshift 入门

步骤 6:删除示例群集

在群集启动并可供使用之后,即使没有实际使用,您也需要根据群集的运行时间支付相应费用。当您不再需要群集时,可将其删除。

在删除群集时,您必须决定是否创建最终快照。由于这是一次练习,测试群集中不会有任何重要的数据,因此您无需创建最终快照。

要删除群集,请键入以下命令:

Copy
aws redshift delete-cluster --cluster-identifier examplecluster --skip-final-cluster-snapshot

恭喜您!您已成功启动、授权访问、连接到并终止了群集。