話題のPlanetScaleを使ってみたら、簡単にRDSを使えるようになった話

## はじめに
「PlanetScale」とは、サーバーレスでMySQLを使用できるサービスです。

https://planetscale.com

とてもスムーズにMySQLを使えて驚きました！

下記の記事を参考にさせていただいております。
https://tech-broccoli.life/articles/engineer/use-planet-scale/

## 結論
「PlanetScale」を使うと、本当に手軽にRDSを使用できるようになります！

0からはじめて、テーブルにデータを入れるところまで15分程度しかかからなかったと思います。

AWSのクラウドサービスに比べて、とてもお手軽だと感じました。

しかも無料！:100:

クレカ登録も不要！:point_up:

すごいサービスですね〜。

## どうやって使うの？
ここからは、具体的なサービスの利用方法をお伝えします。

すべてドキュメントどおりに操作すればスムーズに利用できますよ！

https://docs.planetscale.com/tutorials/planetscale-quick-start-guide#quick-start-with-the-planetscale-application

### 1. ユーザー登録
まず下記ページからユーザー登録をします。
https://auth.planetscale.com/sign-up
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/fcb6f714-bc53-7b91-5573-359b54b9d50a.png)

私はGitHubと連携させました。

すると、PlanetScaleからメールが届きます。

メールに記載の「Confirm email」ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/5c8032bc-654b-8e4c-7e04-6e4acfce6b60.png)

### 2. DB作成
1.のあとは簡単な説明の画面が表示されます。

その後、DBの作成モーダルが表示されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/3d5a2a3f-be82-fe35-acaa-58b5e01067d0.png)

RegionはTokyoを選択しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/174d7217-d064-421d-836f-54e449b4f4a5.png)

「Create database」をクリックすると、下記の画面へ遷移します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/4c34451f-4750-989b-d469-4a33d6aba776.png)

無事に「laravel-app」というデータベースが作成できました。

### 3. ローカル環境（Laravel）と接続
今回はローカル環境のLaravelと接続してみました。

まず、「Ready to connect to your database?」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/32c07029-b669-9a55-6ae4-a81ccbbc79ce.png)

接続方法のプルダウンをクリックし、Laravelを選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/b3951241-5525-8019-9a40-c51e80f5c79f.png)

Laravelを選択すると、接続情報が表示されます。

この接続情報を、ローカル環境の「.env」に追記します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/1e9b9e7e-4089-17a4-0e14-b0b2c4e4a890.png)

これでローカル環境（Laravel）との接続設定ができました。

### 4. テーブルを作成
ブラウザのPlanetScaleに戻り、「Branches」→「main」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/449d6ff5-7300-5e0e-436f-3995cf93363e.png)


今回はドキュメントに沿って、「users」テーブルを作成しましょう。

「Console」タブでmainブランチを操作します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/1395b210-406d-6115-d602-17572f30040f.png)

下記のSQLをコンソールにコピペします。
```sql
CREATE TABLE `users` (
  `id` int NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `email` varchar(255) NOT NULL,
  `first_name` varchar(255),
  `last_name` varchar(255)
);
```

エンターキーを押すと……
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/693788a1-492e-a319-7662-32263d58974b.png)
テーブルが作成できました！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/eb03bbcb-a76d-fbb1-7cd3-fa800c703b72.png)

### 5. データをインサート
仕上げに、4.で作成したテーブルにデータをインサートしてみましょう。

下記のSQLを実行するだけです。

```sql
INSERT INTO `users` (id, email, first_name, last_name)
VALUES  (1, 'hp@test.com', 'Harry', 'Potter');
SELECT * FROM users;
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238817/f240e604-f406-3902-9d38-9c8ccde1b978.png)

インサート完了です！

無事、Harry Potterさんのレコードができました。

あとはLaravelからusersテーブルのデータを参照すると、インサートしたレコードを取得できます！

## おわりに

今回はPlanetScaleを使ってみたら、簡単にRDSを使えるようになった話をお伝えしました。

https://planetscale.com

個人開発くらいであれば、PlanetScaleが最適解と言って良いのではないでしょうか。

基本的に無料ですし、もっと色々使い倒してみたいと感じました！