Google Cloud SQL pPostgreSQL psql 客户端连接
Google Cloud SQL pPostgreSQL psql client connection
按照说明使用 PostgreSQL 数据库创建了 Google Cloud SQL 实例。我可以使用实例名称从 glcoud 命令行检查它:
gcloud sql instances describe my-fancy-instance-name
我得到了很多细节!
当我创建 SSL 证书时,它给了我连接的 psql 命令,它与 Google documentation 给出的关于如何通过 public IP 连接的说明中的说明相匹配(我离开了那个现在启用)。
现在,通过 gcloud 命令验证发现的 IP 和端口,我尝试调用 psql 进行连接:
psql "sslmode=verify-ca sslrootcert=server-ca.pem \
sslcert=client-cert.pem sslkey=client-key.pem \
hostaddr=my_INSTANCE_IP \
user=my_USER_NAME dbname=my_DB_NAME"
需要一点时间,但会返回并报告:
psql: could not connect to server: Operation timed out
Is the server running on host “nnn.ooo.ppp.qqq" and accepting
TCP/IP connections on port xxxxx?
我验证了 ip,但是 gcloud 命令没有返回端口...
现在,我在 ~/.postgress 文件夹中有我的 SSL (.pem) 文件,并在我的命令中也添加了该路径,但我并不高兴。
知道为什么 psql 无法连接(连接超时)吗?特别是因为 gcloud 命令有效?
报错提示CloudSQL实例没有暴露给本机主机IP。与 documentation 第 7 步一样,您需要将本地 psql 客户端 IP 添加到授权网络。你能确认你是否这样做了吗?如果您的本地主机 IP 是动态的,那么一旦您的本地 IP 更改,您必须定期 re-add 将 IP 发送到授权网络。
按照您提供的 Google documentation,我从本地 psql 客户端成功连接到我的 Cloud Postgresql 数据库。
按照说明使用 PostgreSQL 数据库创建了 Google Cloud SQL 实例。我可以使用实例名称从 glcoud 命令行检查它:
gcloud sql instances describe my-fancy-instance-name
我得到了很多细节!
当我创建 SSL 证书时,它给了我连接的 psql 命令,它与 Google documentation 给出的关于如何通过 public IP 连接的说明中的说明相匹配(我离开了那个现在启用)。
现在,通过 gcloud 命令验证发现的 IP 和端口,我尝试调用 psql 进行连接:
psql "sslmode=verify-ca sslrootcert=server-ca.pem \
sslcert=client-cert.pem sslkey=client-key.pem \
hostaddr=my_INSTANCE_IP \
user=my_USER_NAME dbname=my_DB_NAME"
需要一点时间,但会返回并报告:
psql: could not connect to server: Operation timed out
Is the server running on host “nnn.ooo.ppp.qqq" and accepting
TCP/IP connections on port xxxxx?
我验证了 ip,但是 gcloud 命令没有返回端口...
现在,我在 ~/.postgress 文件夹中有我的 SSL (.pem) 文件,并在我的命令中也添加了该路径,但我并不高兴。
知道为什么 psql 无法连接(连接超时)吗?特别是因为 gcloud 命令有效?
报错提示CloudSQL实例没有暴露给本机主机IP。与 documentation 第 7 步一样,您需要将本地 psql 客户端 IP 添加到授权网络。你能确认你是否这样做了吗?如果您的本地主机 IP 是动态的,那么一旦您的本地 IP 更改,您必须定期 re-add 将 IP 发送到授权网络。 按照您提供的 Google documentation,我从本地 psql 客户端成功连接到我的 Cloud Postgresql 数据库。