どうやら最近Cloud SQL Auth Proxyのプログラムが新しくなったらしい。
スネークケース(cloud_sql_proxy)からハイフン(cloud-sql-proxy)のプログラムに変わってました。しれっとオプションとかも全然違うのでちょっとハマりました。
Apple Silicon版を入れる
Cloud SQL Auth Proxy について | Cloud SQL for PostgreSQL | Google Cloud
$ curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.7.1/cloud-sql-proxy.darwin.arm64
$ chmod +x cloud-sql-proxy
TCP接続用に起動する。プロジェクト名とリージョン名とインスタンス名をコロン区切りで指定します。
$ ./cloud-sql-proxy --port 5433 プロジェクト名:リージョン名:インスタンス名
今までのcloud_sql_proxy
だとこれでよかったんですが、新しいやつはそのままだと認証が通りません。
gcloud CLIの認証情報を使う
Cloud SQL Auth Proxy を使用して接続する | Cloud SQL for PostgreSQL | Google Cloud
gcloud auth login
で認証している情報をcloud-sql-proxy
で使うには下記をやります。
$ gcloud auth application-default login
これでlocalhostの5433番ポートに接続するとCloud SQLのインスタンスに接続できます。