菜单
Amazon DynamoDB
开发人员指南 (API Version 2012-08-10)

使用 CLI

您可以使用 AWS Command Line Interface (AWS CLI),从命令行管理多个 AWS 服务并通过脚本自动执行这些服务。您可以使用 AWS CLI 进行临时操作,如创建表。您还可以使用它在实用工具脚本中嵌入 DynamoDB 操作。

您必须先获取访问密钥 ID 和秘密访问密钥,然后才能将 AWS CLI 与 DynamoDB 结合使用。有关更多信息,请参阅 获取 AWS 访问密钥

有关在 AWS CLI 中对 DynamoDB 可用的所有命令的完整列表,请转到 http://docs.aws.amazon.com/cli/latest/reference/dynamodb/index.html

下载和配置 AWS CLI

可在 http://aws.amazon.com/cli 上获得 AWS CLI。它在 Windows、macOS 或 Linux 上运行。下载 AWS CLI 后,可执行以下步骤来安装和配置它:

  1. 转至 AWS Command Line Interface 用户指南

  2. 按照安装 AWS CLI配置 AWS CLI 的说明操作。

在 DynamoDB 中使用 AWS CLI

命令行格式包含 DynamoDB 操作名称,后跟该操作的参数。AWS CLI 支持参数值的速记语法以及 JSON。

例如,以下命令可创建一个名为 Music 的表。分区键为 Artist,排序键为 SongTitle。 (为便于阅读,本部分中的长命令分行显示。)

Copy
aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema AttributeName=Artist,KeyType=HASH AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1

以下命令可将新项目添加到表。这些示例使用速记语法和 JSON 的组合。

Copy
aws dynamodb put-item \ --table-name Music \ --item \ '{"Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"}, "AlbumTitle": {"S": "Somewhat Famous"}}' \ --return-consumed-capacity TOTAL aws dynamodb put-item \ --table-name Music \ --item '{ \ "Artist": {"S": "Acme Band"}, \ "SongTitle": {"S": "Happy Day"}, \ "AlbumTitle": {"S": "Songs About Life"} }' \ --return-consumed-capacity TOTAL

在命令行上,难以编写有效的 JSON。然而,AWS CLI 可以读取 JSON 文件。例如,请考虑以下 JSON 代码段,它存储在一个名为 key-conditions.json 的文件中:

Copy
{ "Artist": { "AttributeValueList": [ { "S": "No One You Know" } ], "ComparisonOperator": "EQ" }, "SongTitle": { "AttributeValueList": [ { "S": "Call Me Today" } ], "ComparisonOperator": "EQ" } }

您现在可以使用 AWS CLI 发出 Query 请求。在该示例中,key-conditions.json 文件的内容用于 --key-conditions 参数:

Copy
aws dynamodb query --table-name Music --key-conditions file://key-conditions.json

在可下载的 DynamoDB 中使用 AWS CLI

AWS CLI 也可与您的计算机上运行的 DynamoDB (下载版本) 进行交互。要启用此功能,请向每个命令添加以下参数:

--endpoint-url http://localhost:8000

下面是使用 AWS CLI 来列出本地数据库中的表的示例:

Copy
aws dynamodb list-tables --endpoint-url http://localhost:8000

如果 DynamoDB 使用的端口号不是默认值 (8000),则请相应地修改 --endpoint-url 值。

注意

AWS CLI 不能使用 DynamoDB 下载版本作为默认终端节点。因此,您必须对每个命令指定 --endpoint-url