简体   繁体   English

使用 gcp 云 sql 代理时如何启用 rewriteBatchStatements?

[英]How to enable rewriteBatchStatements when using gcp cloud sql proxy?

We have a microservice deployed on GKE that connects to mysql db instance on GCP through cloud sql proxy.我们在 GKE 上部署了一个微服务,它通过云 sql 代理连接到 GCP 上的 mysql 数据库实例。 We are using spring jdbctemplate.batchUpdate to execute batch insert/update statements.我们正在使用 spring jdbctemplate.batchUpdate 来执行批量插入/更新语句。 When I append rewriteBatchStatements=true to jdbc url as jdbc:mysql://localhost:3306/db?rewriteBatchStatements=true, it is not able to connect to db instance. When I append rewriteBatchStatements=true to jdbc url as jdbc:mysql://localhost:3306/db?rewriteBatchStatements=true, it is not able to connect to db instance.

The last packet sent successfully to the server was 0 milliseconds ago.最后一个成功发送到服务器的数据包是 0 毫秒前。 The driver has not received any packets from the server.驱动程序没有收到来自服务器的任何数据包。 at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105) at Z4D236D9A2D102C5FE6AD1C50DA at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect. DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)在 com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:1005)在 Z4D2FEAD12C9 4BEC50Z.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151) at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167) at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:91) at com.mysql.cj.NativeSession.connect(NativeSession.java:144) at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:956) at com.mysql.cj.jdbc.ConnectionImpl.creat 4BEC50Z.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151) at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167) at com.mysql.cj.protocol.a.NativeSocketConnection. connect(NativeSocketConnection.java:91) at com.mysql.cj.NativeSession.connect(NativeSession.java:144) at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:956) at com.mysql.cj .jdbc.ConnectionImpl.creat eNewIO(ConnectionImpl.java:826)... 40 common frames omitted Caused by: java.net.ConnectException: Connection refused (Connection refused) at java.base/java.net.PlainSocketImpl.socketConnect(Native Method) at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399) at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242) at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224) eNewIO(ConnectionImpl.java:826)... 40 common frames omitted Caused by: java.net.ConnectException: Connection refused (Connection refused) at java.base/java.net.PlainSocketImpl.socketConnect(Native Method) at java.base /java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399) at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242) at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java :224)

How can I enable rewriteBatchStatements?如何启用 rewriteBatchStatements?

This exception was due to missing service entry for cloud proxy in GKE.此异常是由于 GKE 中缺少云代理的服务条目。 jdbc:mysql://localhost:3306/db?rewriteBatchStatements=true works fine jdbc:mysql://localhost:3306/db?rewriteBatchStatements=true 工作正常

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM