ソフトウェア開発備忘録

ソフトウェアエンジニアの開発備忘録

Cloud SQLを構築してローカルからアクセスする

なにはともあれCloudSQLインスタンスを作成する

インスタンスを作成する  |  Cloud SQL for MySQL  |  Google Cloud Platform
一番安いケチケチインスタンスにする

Cloud SQL フラグを設定する  |  Cloud SQL for MySQL  |  Google Cloud Platform
MySQLのフラグは下記にした(説明省略)

character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
default_time_zone=+09:00
general_log=0
log_output=TABLE
slow_query_log=1
log_queries_not_using_indexes=1
long_query_time=0.5

Cloud SQL Proxy を使用してローカルから接続する

Cloud SQL Proxy を使用して MySQL クライアントを接続する  |  Cloud SQL ドキュメント  |  Google Cloud Platform

Cloud SQL Proxyインストール

任意のフォルダでインストールする

wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64
mv cloud_sql_proxy.linux.amd64 cloud_sql_proxy
chmod +x cloud_sql_proxy

サービス アカウントを作成する

役割でCloud SQL クライアントを選択
f:id:yuki-toida:20170922135542p:plain
[新しい秘密鍵の提供]にチェックを入れ、Cloud SQL Proxyインストールフォルダにダウンロード

プロキシを起動する

インスタンス名と秘密鍵を指定してプロキシを開始する
proxy.shのようなシェルスクリプトがあると便利

#!/bin/sh

PORT=3306
INSTANCE="instance-name"
CREDENTIAL="credential.json"

./cloud_sql_proxy -instances=$INSTANCE=tcp:$PORT -credential_file=$CREDENTIAL
Listening on 127.0.0.1:3306 for instance-name
Ready for new connections

この出力がされたらプロキシが開始されている
mysqlクライアントなりSequel Pro なりでアクセスすればおk

mysql -u <USERNAME> -p --host 127.0.0.1