iOS&Androidスマートフォン開発(Swift/Kotlin/React-Native) および Next.js/LaravelをはじめとしたWeb開発ならば、ぜひ創業13年の弊社にお任せください。ワンストップでお届けします。お問合せはこちらから

PostgreSQLのサーバレス環境。Neonの環境を立ち上げまで解説

  2024年03月25日 16:31 / - PV

yuku_tasのアイコン

こんにちは、Webサービス開発者のyuku_tasです。

簡単なプロフィール: MoldSpoon Inc.代表。開業から15年、業界に携わって20年。Webサイト/iOS/Androidアプリ開発から、データ分析業務・コンサル業務、ベンチャーから保険会社まで様々な案件を個人会社の形で請け負ってまいりました。詳しくはこちら

やっと花粉の目のシバシバが取れてきました...。

例年より スギの東京近郊の飛散完了は時間がかかっている ようです...。この時期だけ永久に感じますね。


そんな春を迎えているこの頃、Hackerの皆様は如何にお過ごしでしょうか。

概要

PostgreSQLを最近触る機会が出そうで、せっかくですので 以前に本ブログにてご紹介したMySQLのサーバレス環境、Planetscaleの PostgreSQL版(というよりポスグレの方がサーバレスは広まっていますが)であるNeon をご紹介します。

クールな印象のUI

クールな印象のUI

本記事ではまず、接続までを設定・試していきます。

下記のドキュメントを読み進め参考にしてまいります。参考URL: 公式ドキュメント

2024/3 現在 無料枠 として利用できる最小スペックは以下のようです。

  • Projects 1 Neon project
  • Branches 10 branches
  • Databases Unlimited
  • Storage 0.5 GiB
  • Compute Always-available primary branch compute, 5 compute hours (20 active hours)/month on branch computes. Free Tier computes have 0.25 vCPU with 1GB RAM.

要約しますと

  • 作れるプロジェクトは1個だけ
  • 500MBのストレージ
  • 0.25の分割CPU

あたりがポイントでしょうか。いかにも心許ない ですがこちらで試していきます。

立ち上げまで

日本リージョンはないようなので、レイテンシが気になりますが取り敢えず シンガポール(ap-southeast-1)リージョン を選択し DB、プロジェクト名ともに 「test」 という名称を設定します。

neon2.png

※ 本番稼働のDBインスタンス立ち上げ時には適切な名称を設定してください。「test」ではセキュリティレベルが落ちます。

パスワードを設定

なんだかわからないまま初期設定を進めた 結果、PostgresDBがサーバレスで立ち上がってしまった...のですが パスワードが不明です。

よって、パスワードを設定します。

DB立ち上げ後のランディングページはこんな感じ

DB立ち上げ後のランディングページはこんな感じ

DBを立ち上げ終えたページで、 「Reset Password」 を押すと新しいパスワードが表示されるので手元にコピーして控えます。

こんなダイアログが出る

こんなダイアログが出る

TablePlusで接続してみる

以下の公式ドキュメントページに接続方法が乗っているので試してみます。

参考URL: Connect a GUI application

こちらの方法では、pgAdminをGUIツール(OSでアプリとして動かせる)として紹介していますが、設定の各パラメーターをのみ見れば、Postgresのみならず、MySQLやredisなどさまざまなDBに対応している TablePlusでも見れるはず。

ということでやっていきます。

具体的な接続子を抽出

私の設定ではこうでした。上にあげたneonの公式ドキュメントに沿って記述します。

postgresql://test_owner:************@ep-rapid-hall-xxxxxxxx.ap-southeast-1.aws.neon.tech/test
                ^                    ^                                                   ^
                |- <role>            |- <hostname>                                       |- <database>

具体的にはTableplusではこのようになります

  • User: test_owner
  • hostname: ep-rapid-hall-xxxxxxxx.ap-southeast-1.aws.neon.tech
  • database: test
  • Password: 前述の方法でリセットしておく
それぞれこのように入れます。

それぞれこのように入れます。

こちらの画像のように設定し、「test」を押すと接続ができました!

まとめ

本日はあくまでneonに接続するところまで を解説しました。次回以降は公式ドキュメントを読み進めつつ、PHPアプリケーション(Laravel)との接続方法や neonならではの癖 などを探っていきたいと思います。


連載記事をお読みいただきありがとうございました!
引き続き当ブログをよろしくお願いいたします。

Share Me!