如何解决为什么针对Spanner模拟器运行的Spanner spring演示无法创建池化数据库连接?
我无法使Google的spring-data-jpa-sample project与Spanner模拟器对抗。我在MacOS Mojave上使用了预安装的JDK 11(AdOpenOpenJDK版本11.0.3 + 7)。
我已经通过我的GCP帐户进行了身份验证,并按照here所述进行了模拟器设置,并按照说明进行了操作,以启动模拟器,成功创建实例并设置了{{1} }环境变量设置为SPANNER_EMULATOR_HOST
。
Spring应用程序运行时失败,并显示以下错误:
localhost:9010
在此之前有两个警告。 HHH000342:无法获得与查询元数据的连接)和SQL错误:0,SQLState:空。
如果我将spring.datasource.url更新为最后添加java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available,request timed out after 30088ms.
(我认为这是建议的解决方法here),结果是相同的。
应用程序代码和配置与spring-data-jpa-sample project完全相同,这就是我未在此处发布它的原因-除了application.properties中usePlainText=true
的值(请参见下文)。要复制此问题,请遵循仿真器设置说明here,克隆存储库,设置项目,实例和数据库变量,然后运行代码示例。
这是spring.datasource.url
文件的内容:
application.properties
解决方法
尽管进行了仔细的检查,但我们错过了设置数据库的重要步骤:
gcloud spanner databases create spring-demo --instance=test-instance
现在一切都很好。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。