App Maker + Google Cloud SQL についてあまり情報がなかったので、試行錯誤しつつまとめてみることにしました。間違いなどあればご指摘頂けると助かります。
本当はGoogle Drive Tables(Google Drive上にDBデータを保存できるステキ機能)を使いたかったんですが、現在この機能は使用不可と。。。(泣
代わりにGoogle Cloud SQLの使用が推奨ということなので、ちょっと手を出してみようかと。
#とりあえず、モデル作成時にGoogle Cloud SQLが選択できない
当然と言えば当然ですが、何も設定していない状態でAppMakerからモデル作成と進んでも、選択肢にGoogle Cloud SQLが表示されるものの選択はできません。
では、以降でGoogle Cloud SQLを選択できるようにするまでの流れを説明していきます。
#GCPにGoogle Cloud SQLのインスタンスを作成する
まずは、接続対象となるDB(Google Cloud SQL)インスタンスを用意しないと始まらないので、その作成からです。
AppMakerのモデルで使用する為にはいくつかの制約1があるので、そこも説明します。
GCPにアクセスして、メニューからSQLを選択します。
プロジェクトが存在しない場合は先に作成してください。
次にデータベースエンジンの選択ですが、ここではMySQL1を選択します。
インスタンスタイプはどちらでも構いませんが、第2世代がお勧めです。
そして、少々注意が必要な各種設定関連ですが、
- インスタンスID
お好きなIDを設定してください。 - リージョン
us-central11を選択してください。
⇒日本人なら東京リージョン(asia-northeast1)を選択したくなりますが、us-central1が一番パフォーマンスが出るらしいです。
参考) 公式ドキュメント
Note: For best performance, choose us-central1 as the region for your new instance, regardless of your geographic location.
- 設定オプションを表示
こちらも表示して設定したほうが良いです。(設定内容は後述
設定オプションを表示して、
- マシンタイプとストレージの設定
デフォルトだとdb-n1-standard-1($49.31/月)になっていますので、用途によって変更します。
テスト目的であれば最小構成のdb-f1-micro($7.67/月)でも良いかと。
ストレージタイプはSSDとHDDで選べます。テスト目的なら低コストのHDDもありですね。 - 自動バックアップと高可用性の有効化
バックアップにもストレージサイズで料金が発生します。不要なら切っておきましょう。
設定が終わったら作成ボタンを押してしばし待ちます。作成には数分の時間がかかります。
下記のようにチェックマークになれば完了です。
これでGoogle Cloud SQLインスタンスの作成は完了です。
次はAppMakerからのアクセス権を設定します。
#Google Cloud SQLにApp Makerからのアクセス権を設定する
Google Cloud SQLのインスタンスを作成したプロジェクトのメニューからIAMと管理を選択します。
IAMの追加で下記メンバーを追加します。
- メンバー
appmaker-maestro@appspot.gserviceaccount.com - 役割
Cloud SQL 管理者
ここまででGoogle Cloud SQL(GCP側)の設定は完了です。
引き続きG Suit側の設定を行います。
#App Makerで使用できるGoogle Cloud SQLインスタンスを設定する
今度はG Suite側の設定となります。
管理者メニューからApp Makerの設定を開きます。
そこのデータベース設定に作成したGoogle Cloud SQLインスタンスの接続名を入力します。
ここまでで事前の設定は完了です。
この状態で改めてAppMakerからモデル作成と進むと、下記のようにGoogle Cloud SQLが選択可能になっているはずです。
NEXT.
次回は実際にGoogle Cloud SQL(DB)へのアクセスを試してみます。
App Maker + Google Cloud SQL の組み合わせで使ってみる(モデル作成)