我(有时)不希望在Java Appengine开发期间使用本地MySQL实例,而希望使用真实的Google Cloud SQL实例(例如,使用真实的东西进行调试)。
可以从IntelliJ =>数据库打开JDBC连接,但是当我在Maven POM中使用此URL时,它无法正常工作…在这种情况下,我已经在使用appengine驱动程序而不是本地mysql连接器。
为什么这不起作用?我应该如何配置我的POM?使用本地MySQL实例时,我使用以下配置;
<extraJvmArgs> -Xmx512M -Xms512M -XX:MaxPermSize=128M \ -Dappengine.user.timezone.impl=UTC \ -Drdbms.server=local \ -Drdbms.driver=com.mysql.jdbc.Driver \ -Drdbms.url=jdbc:mysql://localhost:3306/mydb?user=root </extraJvmArgs>
和我无法使用的Google Cloud SQL实例尝试;
<extraJvmArgs> -Xmx512M -Xms512M -XX:MaxPermSize=128M \ -Dappengine.user.timezone.impl=UTC \ -Drdbms.server=local \ -Drdbms.driver=com.mysql.jdbc.Driver \ -Drdbms.url=jdbc:google:rdbms://domain.com:myportal:myportal/mydb?user=root </extraJvmArgs>
要么
<extraJvmArgs> -Xmx512M -Xms512M -XX:MaxPermSize=128M \ -Dappengine.user.timezone.impl=UTC \ -Drdbms.server=local \ -Drdbms.driver=com.google.appengine.api.rdbms.dev.LocalRdbmsServiceLocalDriver \ -Drdbms.url=jdbc:google:rdbms://domain.com:myportal:myportal/mydb?user=root </extraJvmArgs>
我所有的(远程)尝试都导致连接超时…
不建议使用’jdbc:google:rdbms’的连接方式,从外部应用程序连接到Cloud SQL的首选方法是通过’jdbc:mysql’(docs)使用IP连接。