3

一段时间以来,我一直在多个 Compute Engine 实例上成功使用 Google cloud_sql_proxy,直到今天,一次一个实例,代理开始显示以下错误模式:

2017/05/30 13:28:07 New connection for "project-id-1234:us-central1:sql_instance"
2017/05/30 13:28:07 couldn't connect to "project-id-1234:us-central1:sql_instance": Post https://www.googleapis.com/sql/v1beta4/projects/project-id-1234/instances/sql_instance/createEphemeral?alt=json: stream error: stream ID 1; PROTOCOL_ERROR
2017/05/30 13:28:41 New connection for "project-id-1234:us-central1:sql_instance"
2017/05/30 13:28:41 Thottling refreshCfg(project-id-1234:us-central1:sql_instance): it was only called 33.490705951s ago
2017/05/30 13:28:41 couldn't connect to "project-id-1234:us-central1:sql_instance": Post https://www.googleapis.com/sql/v1beta4/projects/project-id-1234/instances/sql_instance/createEphemeral?alt=json: stream error: stream ID 1; PROTOCOL_ERROR

尝试直接连接到 MySQL 时(使用代理时)出现错误 2013 (HY000):

ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0 "Internal error/check (Not system error)"

我试过的

  • 重新启动 cloud_sql_proxy 产生了一个临时修复,直到最后我的两个 Compute Engine 实例都无法连接到我的 Cloud SQL 实例并且代理只显示这个结果。
  • 重新启动 Cloud SQL 实例和两个 Compute Engine 实例。
  • 消除代理:我将适当的网络添加到我的 SQL 实例的授权网络中,并更新了所有应用程序以使用公共 IP。这恢复了我的生产应用程序的功能,但现在我使用的是公共连接而不是本地/代理。

一些研究

4

1 回答 1

3

我的团队今天开始看到同样的问题出现在 GKE 托管服务器上。和你看到的一样:重新启动服务器和数据库什么也没做。

我们尝试将我们使用的 Google Cloud Proxy 版本从 v1.05 更新到 v1.09,问题就消失了(暂时)。

我知道这不是什么解释,但请尝试一下,看看是否对您有帮助。

于 2017-05-30T22:08:03.720 回答