问题
我无法使用命令行连接到我的Cloud SQL postgres实例,该命令行以前一直在工作:
gcloud sql connect <instance_name> --user=<username>
这是我得到的错误:
ERROR: (gcloud.sql.connect) HTTPError 400: The incoming request contained invalid data.
版本
通过我的三星Galaxy S8运行带有4G热点的macOS Mojave 10.14(18A391(。
$ gcloud --version
Google Cloud SDK 227.0.0
bq 2.0.39
core 2018.11.30
gsutil 4.34
日志
运行带有--log-http
标志的命令,返回:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidRequest",
"message": "The incoming request contained invalid data."
}
],
"code": 400,
"message": "The incoming request contained invalid data."
}
}
问题
为什么会发生这种情况,我能做些什么来解决它?
显然这与我的系留连接有关。它在家里通过我的网络工作。所以这并不是gcloud
的真正问题。然而,我仍然不知道为什么在使用我的电话网络时它不起作用。
尝试使用代理进行连接。按照以下链接中提供的步骤操作-:https://cloud.google.com/sql/docs/postgres/connect-admin-proxy
或者使用连接部分的添加网络选项添加服务器CIDR地址。
我在MacOS上也遇到了这个问题(但不是共享(,并且在我的网络偏好中将ipv6切换到本地链接解决了这个问题。正如对已接受答案的评论所提到的,这里仍然有一个关于这个问题的开放功能请求:https://issuetracker.google.com/issues/72219717.