如果我有一个Compute Engine实例池(位于具有静态IP的负载均衡器后面),并且我想从这些实例上的Java应用程序连接到同一项目中的Cloud Sql数据库,那么关于它的方式是什么?如何将Google Compute Engine实例池连接到同一项目中的Cloud SQL DB?
1)负载均衡器中的这些实例没有静态外部IP,因此我无法授权通过IP地址访问Cloud SQL。
2)“com.mysql.jdbc.GoogleDriver”在Compute Engine上不可用,因为它在App Engine上。
3)如果我试图用股票MySQL JDBC驱动程序,它不理解的连接字符串,如:
"jdbc:google:mysql://__instance_name__/__db_name__>?user=__user__&password=__password__";
and fails saying "No suitable driver found for jdbc:google:mysql://__instance_name__/__db_name__>?user=__user__&password=__password__"
我不能相信我不能轻易地从连接Compute Engine的实例同一Google Cloud项目的云端SQL数据库。
是我使用https://cloud.google.com/sql/docs/compute-engine-access上描述的“使用云SQL代理连接”方法的唯一选择吗?这似乎是大量的工作要自动完成的实例会来到游泳池并随时离开!
难道有人可以抛出一些光吗?
谢谢。
我认为您可能需要使用Cloud SQL Proxy选项,并使用启动脚本来执行安装。 https://cloud.google.com/compute/docs/startupscript – Dagang
是的,事实上,仅需2分钟,我就成功地通过Cloud SQL Proxy选项开始连接。不得不睡在之间,当昨晚变得清晰的时候,“云SQL代理”是唯一的选择。 – Roshan