【问题标题】:Can't connect to local DynamoDb instance via AWS CLI无法通过 AWS CLI 连接到本地 DynamoDb 实例
【发布时间】:2016-09-11 18:24:42
【问题描述】:

我已经通过后续步骤创建了 DynamoDb 的本地实例:在 Visual Studio 中,我安装了 AWS 资源管理器并在 localhost:82 上创建了一个新的本地实例。 我可以使用 AWS 库从我的 c# 代码中成功使用它。我创建了表格,甚至在其中放入了一些数据。我什至可以在 Visual Studio 的 AWS 资源管理器中看到这些数据。 我需要添加大量数据,并且准备使用 AWS CLI 工具。但我无法从控制台看到任何数据和表格。我把这个:

aws dynamodb list-tables --endpoint-url http://localhost:82

并看到响应:

{
    "TableNames": []
}

但我很确定那个端口上的数据库有一些数据,因为我可以从我的 c# 代码中实现它。 我也尝试通过此命令从控制台启动 DynamoDb:

java -jar DynamoDBLocal.jar

它成功启动,但在这种情况下,我无法从我的 c# 代码中实现此服务器。

下面屏幕截图中的代码运行良好并成功将数据放入表中: 另一方面,这是 AWS CLI 的输出: 对不起,这可能是愚蠢的问题,但我做错了什么? 谢谢。

【问题讨论】:

  • 我认为如果无法连接,您会收到错误消息,而不是空表列表。当您运行该命令并且根本没有运行 DynamoDB 时会发生什么?
  • 您很可能使用默认端点而不是本地数据库创建表。
  • @MarkB 我没有看到错误消息。我什至可以从 CLI 创建表,然后我会在列表中看到它。所以这意味着它是另一个带有另一个表的服务器
  • @helloV 你认为我在哪里创建了错误的端点?
  • 在 C# 和 CLI 中连接时是否使用相同的访问密钥?访问密钥用作磁盘上数据库文件的名称。 (密钥被忽略,它的值无关紧要。)我相信如果访问密钥不同,您将使用不同的数据库(并且看不到相同的表)。

标签: amazon-web-services aws-cli amazon-dynamodb


【解决方案1】:

我遇到了完全相同的问题。基本上你需要在启动 dynamo 时指定 -sharedDb

java -jar DynamoDBLocal.jar -sharedDb

希望能解决你的问题。

【讨论】:

    【解决方案2】:
    java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
    

    已经解决了类似的问题。

    【讨论】:

      猜你喜欢
      • 2023-02-20
      • 2019-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-23
      • 1970-01-01
      • 2015-04-30
      • 2021-03-10
      相关资源
      最近更新 更多