Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server Gcp appengine应用程序未正确连接到云sql数据库_Sql Server_Spring Boot_Kotlin_Google Cloud Platform - Fatal编程技术网

Sql server Gcp appengine应用程序未正确连接到云sql数据库

Sql server Gcp appengine应用程序未正确连接到云sql数据库,sql-server,spring-boot,kotlin,google-cloud-platform,Sql Server,Spring Boot,Kotlin,Google Cloud Platform,我的spring boot/kotlin应用程序和数据库之间存在连接问题。我试着遵循谷歌提供的指南和一些Stackoverflow帖子。我向用户添加了客户端/管理员sql权限。 在这个链接上遵循谷歌指南并按原样重新创建所有内容之后。我遇到了一个问题:部署的应用程序并没有连接到实际的数据库,而是使用了资源中的data.sql和schema.sql对象,也并没有对实际的数据库进行更改,但在其他地方,例如,我使用以下命令来获取数据: @GetMapping("/getdata")

我的spring boot/kotlin应用程序和数据库之间存在连接问题。我试着遵循谷歌提供的指南和一些Stackoverflow帖子。我向用户添加了客户端/管理员sql权限。 在这个链接上遵循谷歌指南并按原样重新创建所有内容之后。我遇到了一个问题:部署的应用程序并没有连接到实际的数据库,而是使用了资源中的data.sql和schema.sql对象,也并没有对实际的数据库进行更改,但在其他地方,例如,我使用以下命令来获取数据:

 @GetMapping("/getdata")
    fun getTuples(): List<String>? {
        return jdbcTemplate!!.queryForList("SELECT * FROM users").stream()
                .map { m: Map<String?, Any?> -> m.values.toString() }
                .collect(Collectors.toList())
    }
云数据库中的实际用户表如下所示:

postgres=> select * from users;
       email        | first_name | last_name
--------------------+------------+-----------
 luisao@example.com | Anderson   | Silva
 jonas@example.com  | Jonas      | Goncalves
 fejsa@example.com  | Ljubomir   | Fejsa
 kkskldk            | sjndjfdf   | skdskd
(4 rows)
前3行是相同的,只是因为我手动添加了它们。应用程序在数据库中看不到DDL/DML更改,只有我在data.sql或schema.sql中看到的更改。所以问题是哪里会有问题? 在本文档中,该依赖项应该自动完成大部分工作,但不知何故出现了一些问题。 可能是spring boot/hikari在appengine中创建了虚拟环境,阻止了数据库连接,而您只连接并查看data.sql文件中的模拟数据?或者问题在于配置? My application.properties文件:

server.error.include-message=always
spring.cloud.gcp.sql.database-name=[database name]
spring.cloud.gcp.sql.instance-connection-name=[Instance name]
spring.datasource.continue-on-error=true
spring.datasource.initialization-mode=always
spring.datasource.username=postgres
spring.datasource.password=[password]
spring.cloud.gcp.project-id=[project id]

您是否在postgre中提交了数据?是的,我在数据库中提交了数据,或者您也可以使用appengine激活提交?它肯定有相同的数据。在AppEngine上,这取决于您的配置和代码(尤其是Spring注释)。在同一个数据库中,您在本地是否有相同的行为?@guillaumeblaquiere嗯,我编写的代码非常类似于示例中的代码。所以这并没有什么不同,我是否应该分享一些其他东西,让情况变得更清楚?从intelej和appengine启动应用程序提供了相同的输出。很好,如果本地和appengine上的输出相同,则状态良好:问题不是来自应用程序引擎,而是来自代码。
server.error.include-message=always
spring.cloud.gcp.sql.database-name=[database name]
spring.cloud.gcp.sql.instance-connection-name=[Instance name]
spring.datasource.continue-on-error=true
spring.datasource.initialization-mode=always
spring.datasource.username=postgres
spring.datasource.password=[password]
spring.cloud.gcp.project-id=[project id]