3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Advent Calendar 2019

Day 8

Google Cloud PlatformにCloud SQL インスタンスを作成する

Posted at

みなさん、こんにちは。

何か新しい事に挑戦しようと思い、nuxt.jsとfirebaseからのGoogle Cloud Platformを勉強し始めました。

nuxt.js + firebaseの環境構成は初め見たときかなり斬新で楽しいのですが、Firestore + Cloud Functionsの組み合わせが自分にはちょっと難易度高すぎてバックエンドはlaravel + SQLがやっぱり良いなと。

・・・というわけで、今回はGoogle Cloud Platform(以下、GCP)のCloud SQLインスタンスの作成にチャレンジしてみました。

本当は、ほぼこの話(アドベントカレンダー)のためにフロントnuxt.js環境、バックエンドlaravel + firebase + Cloud SQLで作ったので実際に今回作成したデータベースに接続するところまで記載したかったのですが、久しぶりに調べながら記事を書いていたら時間がかかり過ぎて、到底終わらない量になってしまいました。

内容的にご存知の方には全く面白く無い内容に仕上がってる気がしますが、「Google Cloud PlatformにCloud SQLインスタンスを作成するのって、意外と楽なんだな。今度やってみようかな。」みたいに思ってくれる人がいると良いなと思い書いたのでよかったら最後までお付き合いくださいませ。

前提条件

前提条件としてGCPのアカウントの作成、Cloud SDKのインストールは完了しているものとします。

また、GCPのCloud SQL インスタンスは無料枠が存在しないようなので、今回はGCPアカウントを初回作成した際に割り当てられる無償クレジットを使っています。

Cloud SQL インスタンスを作成する

GCP管理画面からSQLを選択すると、Cloud SQLインスタンス作成画面が開きます。
「インスタンスを作成」を選択しましょう。

image.png

データベースエンジンの選択

現在GCPではMySQL、PostgreSQL、SQL Serverの3種類が選択出来ます。
この辺を見た感じ、単純なWEBアプリケーションならMySQLのパフォーマンスが良さげだったので今回はMySQLを選択して進みます。

image.png

DBインスタンスの詳細を設定

作成するインスタンスのマシンタイプやストレージ容量はここで指定する事ができます。

image.png

マシンタイプはデフォルトdb-n1-standard-1という本番運用可能なものが指定されています。
とりあえず使ってみたい課金額が気になる人はここで最小構成の物を選んでみると良いと思います。(最小構成で課金が始まったら月額およそ800円くらい?)

image.png

パブリックIPの設定

パブリックネットワークから接続する場合はここでネットワークを指定する必要があるようです。
ただ、GCP内から接続する場合は特に何も設定なしで

image.png

作成するとGCP管理画面上ではこんな感じで表示されます。

image.png

データベースを作成してみる

作成したインスタンスを参照し、データベースタブから新規データベースが作成出来ます。
試しにテストデータベースを作成してみます。

image.png

データベース名を適当に決めて、あとはデフォルトのままで良さそうなので「作成」しました。

image.png

データベースに接続する

作成したデータベースに接続してみます。
接続はGCPのWEB画面上にあるgcloud CLIから接続出来ます。
gcloud CLIを起動したら(画面右上のコンソールアイコンをクリックして起動)以下のコマンドで接続出来ます。

gcloud sql connect <データベース名> --user=root

image.png

無事、データベースに接続する事ができました!!

その他の話については、また機会があれば・・・そうですね、来年のクリスマス頃にまた!!

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?