■ 今回お話すること
- GCP CloudSQLの環境設定について
- Cloud Shellを使用して、テーブル作成・取得する方法について
- 忘備録的な記事となっておりますご注意を(SQLの基本的なことはお話しません)
■ 前提
- GCP上にプロジェクト作成済みであること
■ 今回の環境
> GCP:Cloud SQL
MySQL5.7 第2世代
■ GCP CloudSQLの環境設定
① GCPのナビメニュー → SQL を選択
② 上部メニューにある「インスタンスを作成」からインスタンスを作成する
③ 今回は、MySQLを選択して「作成」する
④ 第2世代をゴリ押ししてきてくれたので、「第2世代を選択」する
⑤ インスタンスIDと、パスワードを指定して「作成」
⑥ ⑤で作成したインスタンスIDを選択して、インスタンスの詳細を表示し、Cloud Shellを使用して接続確認を実施
⑦ 画面に、Shell画面が起動したら以下のコマンドを実行して、接続する
Welcome to Cloud Shell! Type "help" to get started.
Your Cloud Platform project in this session is set to [プロジェクト名].
Use “gcloud config set project [PROJECT_ID]” to change to a different project.
nunnally*******@cloudshell:~ ([プロジェクト名])$ gcloud sql connect firebase-app --user=root --quiet
⑧ ⑦を実行したら、rootのパスワードを入力してくれたまえ的に要求されるので⑤で設定したパスワードをコピー&ペーストではなく入力する
Connecting to database with SQL user [root].Enter password:
⑨ 以下のメッセージが表示されて、MySQL >となっているので作成&接続完了
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 99
Server version: 5.7.14-google-log (Google)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [(none)]>
■ Cloud Shellを使用して、テーブル作成・取得する方法
- 手順としては、以下の手順となります。
- データベース作成
- 使用するデータベース設定
- テーブル作成
- テーブルにデータ登録
- 登録したデータを取得する
1. データベース作成
- Cloud Shellで、データベースを作成していきます。
試しに、「sample_dev」というデータベースを作ります。
Query OKと出れば、作成に成功してます。
MySQL [(none)]> CREATE DATABASE sample_dev;
Query OK, 1 row affected (0.16 sec)
2. 使用するデータベース設定
- 先程作成したデータベースを使用しますよ〜と明示的にMySQLに宣言します。
Database changedと出れば、選択済みとなっています。
MySQL [(none)]> use sample_dev;
Database changed
3. テーブル作成
- id、name列があるusersというテーブルを作成していきます。
MySQL [sample_dev]> CREATE TABLE users (
-> id MEDIUMINT NOT NULL AUTO_INCREMENT,
-> name varchar(255) DEFAULT NULL,
-> PRIMARY KEY (id)
-> );
Query OK, 0 rows affected (0.17 sec)
MySQL [sample_dev]>
4. テーブルにデータ登録
- users.nameに私の名前「nunnally」を登録してみましょう。
MySQL [sample_dev]> INSERT INTO users
-> (name)
-> VALUES (
-> 'nunnally'
-> );
Query OK, 1 row affected (0.17 sec)
5. 登録したデータを取得する
- 上記で登録した「nunnally」というレコードが取得できたら登録&取得成功です。
MySQL [sample_dev]> select * from users;
+----+----------+
| id | name |
+----+----------+
| 1 | nunnally |
+----+----------+
1 row in set (0.15 sec)
MySQL [sample_dev]>
■ まとめ
この設定と簡単なSQLさえ覚えておけば手軽にRDBを体感することができるので色々試してみたいと思いました(●´ω`●)