无法使用 CLI 从服务帐户访问 CloudSQL MYSQL5.7

Unable to Access CloudSQL MYSQL5.7 From Service Account Using CLI

我有 MYSQL_5_7 的简单 cloudsql 实例,带有 enable_iam_authentication 标志。

我已添加服务帐户或 IAM 用户,并希望使用 mysql 客户端访问实例。

我正在使用 cloudsql 身份验证代理:

./cloud_sql_proxy -instances=watchful-pier-333707:us-central1:test-002=tcp:3306 --enable_iam_login

正在使用以下命令访问数据库: mysql -u root -p --host 127.0.0.1

使用内置用户 root 我可以成功访问实例。

当我尝试使用以下命令使用 IAM user/service 帐户访问数据库时,我收到“与 'reading authorization packet' 的 MySQL 服务器的连接丢失,系统错误:0” .

mysql -u <user_name> -p --host 127.0.0.1 user_name 是我在用户列表中看到的已添加用户

遵循此文档 - this

任何人都可以帮忙。提前致谢!

自动 IAM AuthN 尚不可用于 MySQL。一旦完成,我们将更新 proxy docs.

CLI 的解决方案使用以下命令:

MYSQL_PWD=`gcloud auth print-access-token` mysql --enable-cleartext-plugin --host=127.0.0.1 --user=<user_name>

确保您已授权服务帐户并赋予其令牌创建者角色。