当前位置: 首页 > 知识库问答 >
问题:

从Cloud Run(knative)连接到Google Cloud MySql

洪梓
2023-03-14

使用jdbc连接字符串中的ip地址进行连接(这在本地有效,但页面上的这句话暗示在google cloud run上可能不行,“cloud run(完全管理的)不支持使用TCP连接到cloud SQL实例。您的代码不应该尝试使用诸如127.0.0.1或172.17.0.1之类的ip地址访问实例。”)按建议使用unix套接字连接时,服务器甚至没有启动

当我用jdbc url中的ip地址启动应用程序时,在google cloud上,看起来应用程序启动成功:

2020-02-12T02:51:01.733606Z 2020-02-12 02:51:01.733  INFO 1 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path '' 
2020-02-12T02:51:01.740162Z 2020-02-12 02:51:01.739  INFO 1 --- [           main] com.connor.Application                   : Started Application in 15.717 seconds (JVM running for 17.715) 

然而,当我提出第一个请求时,我看到了以下内容:

Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure
Caused by: java.net.SocketTimeoutException: connect timed out
Caused by: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

你可能有什么建议吗?我想知道这是否与必须配置数据源有关,如下面所列:https://github.com/googleCloudplatform/java-docs-samples/blob/master/cloud-sql/mysql/servlet/src/main/java/com/example/cloudsql/connectionpoolcontextlistener.java

共有1个答案

邓正真
2023-03-14
  1. 生成和部署容器
  2. 从云运行连接

在第二个链接的最后一步:“连接到CloudSQL”,而不是使用代码段,我使用了GitHub指令中的以下命令:

 gcloud run services update helloworld --add-cloudsql-instances [INSTANCE_CONNECTION_NAME] --set-env-vars CLOUD_SQL_CONNECTION_NAME=[INSTANCE_CONNECTION_NAME],DB_USER=[MY_DB_USER],DB_PASS=[MY_DB_PASS],DB_NAME=[MY_DB]

请注意这个命令的间距,因为它很容易造成错误。

    null
 类似资料:
  • Knative(发音为 kay-nay-tiv)是谷歌开源的一套 Serverless 架构方案,它扩展了 Kubernetes,提供了一组中间件,提高了构建可在本地、云和第三方数据中心等地方运行的现代化、以源为中心且基于容器的应用的能力。 目前已经提供了以下组件: Build - 源到容器的构建编排 Eventing - 事件管理和交付 Serving - 请求驱动的计算 Knative 专注于

  • 问题内容: 我可以从DOS提示符下成功连接到MySQL,但是当我尝试从cygwin连接时,它会挂起。 怎么了? 问题答案: 假设您具有MySQL的本机Windows版本,(命令提示符)Windows和Windows 之间没有终端仿真不兼容。提示没有出现。 要确认这一点,请键入命令并返回-它可能会起作用,但是命令的提示和回显(您键入的内容)会丢失。 系统属性或in中可能都存在一种解决方法,但是我从来

  • 我正在尝试通过JAVA代码在SAP HANA上使用火花SQL执行查询。在对数据帧对象调用任何操作时,当调用 时,我在代码段下方得到 java.io.NotSerializableException.In,不会引发可序列化异常。 错误堆栈跟踪: 线程“main”org.apache.spark中出现异常。SparkException:位于org.apache.spark.util.ClosureCl

  • 我正在尝试在Linux-Debian 8.11@Virtualbox上设置MSSQL数据库,但无法通过MSSQL MSSQL Server Management Studio连接到它 服务器是可ping的。 VirtualBox中的网络设置: 纯主机网络VirtualBox纯主机以太网适配器 有什么想法吗? 错误日志@服务器 https://pastebin.com/7WGEVg1a

  • 使用Database ricks笔记本,我能够从Database ricks连接到“雪花”,并使用“scala”将内容写入Snowflake中的表,但使用“python”无法正常工作。 我在数据砖中添加了这两个库,这有助于在数据砖和雪花之间建立联系:和。 我的目标是使用Databricks(用于机器学习- Spark)并在Databricks和雪花之间来回移动数据。 下面是我尝试将数据帧的内容写入

  • 我正在做一个NodeJS项目,似乎使用了非常常见的AWS设置。我的ApiGateway接收调用,触发lambda A,然后这个lambda根据从ApiGate传递的参数触发其他lambda,比如B或C。 Lambda A需要访问MongoDB,为了避免自己运行MongoDB时遇到麻烦,我决定使用mLab。ATM Lambda A正在使用NodeJS驱动程序访问MongoDB。现在,为了不在每次执行