nkmtの日記

日常のことをつらつら書きます

cloudSQLにmacのローカルから接続する方法

GCPインフラ

2017年9月18日

はじめに

GAEを使ってwordpressを構築したいと思ったのがきっかけで、GCPを使っていてcloudSQLへローカルから繋ぎたくなりました。
この方法は2つあり特定のipからの許可を行う方法とproxyを使う方法の2種類あります。
特定のipから許可する方法はAWSでSGの解放と考え方は同一なのでわかりやすいと思います。
むかしip許可をする方法は管理画面から行うだけでできたのですがproxyの方法は?な部分があったのでできなかったのを覚えています。
今回はこのprxoyを使う方法を自分の備忘録として記録します。

cloud SDKのインストール

cloud sdkは簡単に言うとaws-cliのようなもの?これを入れると簡単にローカル端末からGCPへアカウントのログインが行うことができます。ただむかしハマったのがこれpythonのバージョンが3系だと動かないのでローカルでpython3系の人はpyenvなどでこれを動かす時だけ2.7系にしないとダメな気がします。
下記はgoogle公式にあるものと同一です。


curl https://sdk.cloud.google.com | bash
exec -l $SHELL
gcloud init

アカウントを切り替えたい時

余談ですがgoogleのアカウントは複数持っている人も多いとお思います。
その場合にアカウントの切り替えたい時は、ログインし直すといいと考えます。


gcloud auth list
gcloud auth login

リストでみてお目当のアカウントと違ったら切り替え。

cloudSQLへの接続

上記で基本的な準備が整っているのでcloudSQLへ進みます。

cloud_sql_proxyをダウンロード

こちらもgoogle公式と同一ですが記します。

curl -o cloud_sql_proxy https://dl.google.com/cloudsql/cloud_sql_proxy.darwin.amd64
chmod +x cloud_sql_proxy

cloud sqlへ接続

上記でダウンロードしたcloud sql prxoyのディレクトリの上に適当なディレクトリを作成(localsql)し下記のコマンドを実行すればコネクションはできるかと思います。
./cloud_sql_proxy -dir=localsql -instances=cloudsqlの接続インスタンス

終わりに

GCPはどうもAWSよりも情報が少なくハマると難しい部分がありますね。
ただ料金やサービス的に魅力的なものも多いのでこれからも色々試して行きたいなと思います。
特に個人が行うサービスはAWSよりもお財布に優しいしGCPが自動でやってくれるところもあっていいですね。