首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >中连接到Google数据库的独立Java应用程序

中连接到Google数据库的独立Java应用程序
EN

Stack Overflow用户
提问于 2017-08-03 16:42:26
回答 1查看 683关注 0票数 0

目标:在云中运行一个独立的Java &数据库应用程序,以提高性能、可伸缩性和高可用性

应用程序详细信息

  • 基于Spring Boot的Java应用程序被克隆到Google标准环境中的一个文件夹中。
  • 创建Google第二代实例

注释:云Shell与Cloud在同一个Google项目中

Google

代码语言:javascript
复制
user@${PROJECT_ID}:~$ cd git

user@${PROJECT_ID}:~$ cd myapplication

使用Maven运行应用程序会引发无法连接到Cloud数据库的异常

代码语言:javascript
复制
user@${PROJECT_ID}:~$ mvn exec:java

使用不同的JDBC连接字符串和JDBC驱动程序没有帮助。

application.properties

代码语言:javascript
复制
# Use MySQL database
#etl.datasource.url=jdbc:mysql://${IP:Instance_name}/${database}?autoReconnect=true&useSSL=false
#etl.datasource.url=jdbc:google:mysql://${INSTANCE_CONNECTION_NAME}/${database}
etl.datasource.url=jdbc:mysql://google/${database}?cloudSqlInstance=${INSTANCE_CONNECTION_NAME}&socketFactory=com.google.cloud.sql.mysql.SocketFactory&useSSL=false
#etl.datasource.driver-class-name=com.mysql.jdbc.Driver
etl.datasource.driver-class-name=com.mysql.jdbc.GoogleDriver
etl.datasource.username=${user}
etl.datasource.password=${password}

2017-08-03 10:40:59.477错误381 -- MyApplication.main() o.a.tomcat.jdbc.pool.ConnectionPool :无法创建池的初始连接。com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:无法创建到数据库服务器的连接。尝试重新连接3次。放弃吧。 2017-08-03 12:16:23.525错误1048 - MyApplication.main() o.a.tomcat.jdbc.pool.ConnectionPool :无法创建池的初始连接。无法从ClassLoader:java.net.URLClassLoader@13b428de;ClassLoader:java.net.URLClassLoader@13b428de加载类: com.mysql.jdbc.GoogleDriver

即使添加src/webapp/WEB/appEngine-web.xml也没有帮助。

appengine-web.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
    <threadsafe>true</threadsafe>
    <use-google-connector-j>true</use-google-connector-j>
</appengine-web-app>

问题

  1. Google只适用于基于Web的应用程序吗?
  2. Google是否适合于基于非web控制台的Java应用程序?
  3. 或者我应该使用平台来运行这样的非web控制台应用程序,并且类似于在我的本地计算机上运行?
  4. 是否有可以为com.mysql.jdbc.GoogleDriver添加的Maven依赖项?
EN

回答 1

Stack Overflow用户

发布于 2018-02-15 15:40:28

在App上,您想要做的事情应该是绝对可能的。对于Google驱动程序,确实存在一个Maven依赖关系:

代码语言:javascript
复制
    <dependency>
        <groupId>com.google.cloud.sql</groupId>
        <artifactId>mysql-socket-factory</artifactId>
    </dependency>

此外,由于您正在使用Spring,我建议您尝试一下春云GCP。有一个简单的云SQL示例可以让您快速入门。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45490133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档