GCPでCloud SQL に Cloud SQL Proxy で接続できるようにする
プログラマのためのGoogle Cloud Platform入門(https://www.amazon.co.jp/dp/B0721JNVGT) を読み進めながら備忘録として書く。
文章の推敲はあとでする(多分しない)。実行環境はGCEでlinuxならどれでもいけるはずです。
実際GCPの変更で危殆化する可能性あるんですが、そうなる前に必要になる可能性もあるんで書きます。
本家: https://cloud.google.com/sql/docs/mysql/external-connection-methods?hl=ja
1. Cloud SQL Admin API を有効化する。
[ナビゲーションバー]
->[APIとサービス]
->[ライブラリ]
->[Cloud SQL Admin API]
有効化する。プログラマのためのGoogle Cloud Platform入門だと「Cloud SQL API」ってなってるけど
名前が変わったぽい。
2.データベースの作成
割愛(create database hoge_db; とか)。
ついでにroot以外のユーザも作っておくとイイ(grant all privileges on hoge_db.* to hoge_user@"%" identified by 'password' with grant option; とか)。
3.Cloud SQL Proxy のインストール
Cloud SQL Proxy のダウンロード
wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
プロキシを実行できるようにします。
chmod +x cloud_sql_proxy
プロキシ ソケットを格納するディレクトリを作成する(Unix ソケットを使う場合)。
sudo mkdir /cloudsql; sudo chmod 777 /cloudsql
プロキシを開始する。サービスとして登録し、自動起動すると便利。
./cloud_sql_proxy -dir=/cloudsql -instances=<Cloud SQL におけるインスタンス接続名>
4.MySQL セッションを開始。
mysql -u <USERNAME> -p -S /cloudsql/<Cloud SQL におけるインスタンス接続名>
何やかんややっぱり公式情報が一番だと思う。(https://cloud.google.com/sql/docs/mysql/connect-compute-engine?hl=ja)