Scalar DB多存储场景下如何配置Dynamo DB Local的Endpoint Override
问题根因
你当前的配置存在属性名拼写错误:
Scalar DB 中 DynamoDB 存储的自定义端点配置的正确键名是带下划线的 endpoint_override,而非你使用的中划线格式 endpoint-override,这是配置不生效的核心原因。
修正后的配置参考
把错误的行替换后,完整的 DynamoDB Local 存储配置如下:
## Dynamo DB for the transaction tables scalar.db.multi_storage.storages.dynamo.storage=dynamo scalar.db.multi_storage.storages.dynamo.contact_points=ap-northeast-1 scalar.db.multi_storage.storages.dynamo.username=fakeMyKeyId scalar.db.multi_storage.storages.dynamo.password=fakeMyKeyId scalar.db.multi_storage.storages.dynamo.contact_port=8000 # 修正为下划线格式的配置键 scalar.db.multi_storage.storages.dynamo.endpoint_override=http://localhost:8000
额外校验项
如果修正后仍有问题,可以逐一排查以下配置:
- 确认你使用的 Scalar DB 版本 >= 3.0,旧版本的多存储配置规则存在差异
- 确认 DynamoDB Local 服务已正常启动,且 8000 端口没有被其他服务占用
- 确认多存储的默认存储、表映射规则已经配置正确,确保需要走 DynamoDB 的请求确实路由到了你配置的 dynamo 存储实例
- 可以在启动时开启 Scalar DB 的 debug 日志,查看配置加载阶段是否识别到了 DynamoDB 的自定义端点配置
内容的提问来源于stack exchange,提问作者Ken Yurino
相关产品推荐
相关产品推荐

