{GCP Cloud SQL}Cloud SQL Auth Proxy を使用して接続する

https://cloud.google.com/sql/docs/mysql/connect-auth-proxy?hl=ja#macos-64-bit

Cloud SQL インスタンスへの接続には、Cloud SQL Auth Proxy を使用することをおすすめします。Cloud SQL Auth Proxy は、次のことを行います。

パブリック IP エンドポイントとプライベート IP エンドポイントの両方で動作する。
ユーザーまたはサービス アカウントの認証情報を使用して接続を検証する。
Cloud SQL インスタンスに対して認可された SSL / TLS レイヤに接続をラップする。

 

 

-- 1. 前作業

gcloud init
gcloud auth list

gcloud --version

gcloud projects create project01-9999999 \
--name="project01"

gcloud config list
gcloud config set project project01-9999999
gcloud config set compute/region asia-northeast1 --quiet
gcloud config set compute/zone asia-northeast1-a --quiet

gcloud beta billing accounts list
gcloud beta billing projects link project01-9999999 --billing-account=111111-111111-111111

gcloud services enable compute.googleapis.com --project project01-9999999

gcloud components update

 


-- 2. DB作成

gcloud sql instances create mysql01 \
--storage-size=10 \
--storage-type=HDD \
--tier=db-f1-micro \
--region=asia-northeast1 \
--database-version=MYSQL_8_0_31 

gcloud sql instances list

-- 3. Cloud SQL Auth Proxy をダウンロードする


curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.6.1/cloud-sql-proxy.darwin.amd64

sudo chmod +x cloud-sql-proxy


-- 4. Cloud SQL Auth Proxy を起動する

gcloud sql instances describe mysql01 --format='value(connectionName)'

 

./cloud-sql-proxy --port 3306 $(gcloud sql instances describe mysql01 --format='value(connectionName)')

-- 5. インスタンスに接続する

mysql -u root --host 127.0.0.1

 


-- 6. クリーンアップ


gcloud sql instances list
gcloud sql instances delete mysql01 --quiet


gcloud projects list

gcloud projects delete project01-9999999 \
--quiet


gcloud beta billing projects unlink project01-9999999