簡體   English   中英

如何將托管在 Google 雲引擎上的 Spring Boot 應用程序連接到 mysql 數據庫?

[英]How to connect a spring boot application hosted on Google cloud engine to a mysql db?

我想在谷歌雲引擎上部署我的 java spring boot 應用程序。 當我不配置數據庫時,它運行良好。 但是當我使用 jpa 時,它只是找不到連接。 我嘗試了多種方法,但到目前為止還沒有奏效。

spring:
    jpa:
        database: MYSQL
        show-sql: false
        hibernate:
          ddl-auto: update
    datasource:
        driver-class-name: com.mysql.jdbc.GoogleDrive
        username: root
        password: ********
        url: jdbc:google:mysql://something-app:us-central1:something/something?user=root

這是我嘗試的最后一個配置,但找不到驅動程序。 我的 pom.cml 中有這個

    <dependency>
        <groupId>com.google.cloud.sql</groupId>
        <artifactId>mysql-socket-factory</artifactId>
        <version>1.0.0-beta1</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>6.0.4</version>
    </dependency>

知道我做錯了什么。 或者它工作的例子(github 或其他)?

堆棧跟蹤:

2016-10-08 14:13:13 default[20161008t161026]  java.sql.SQLException: Driver:com.google.appengine.api.rdbms.AppEngineDriver@746b25b1 returned null for URL:jdbc:google:mysql://something-app:us-central1:something/something?user=root

我終於用以下配置讓它工作了。

spring:
    jpa:
        database: MYSQL
        show-sql: false
        hibernate:
          ddl-auto: update
    datasource:
        url: jdbc:mysql://google/myproject?cloudSqlInstance=myproject-app:us-central1:myproject&socketFactory=com.google.cloud.sql.mysql.SocketFactory&user=******&password=**********

我在 pom.xml 中使用了這個

<dependency>
    <groupId>com.google.cloud.sql</groupId>
    <artifactId>mysql-socket-factory</artifactId>
    <version>1.0.1</version>
</dependency>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM