DBeaverでElephantSQLに接続


はじめに

OSS-DB Silver取得に向けてPostgreSQLを使うため、環境構築を試みていました。
右往左往(前回までの記事参照)した結果、
DBeaverを介してElephantSQLを使って学習することにしました。

今からやりたいこと

「自分のPCにインストールしたDBeaver」から「クラウド上にあるDB=ElephantSQL」にアクセスし、DBeaverでElephantSQLを操作する。

OSS-DB SilverはPostgreSQLの資格試験なのに、ElephantSQLで勉強して問題無いのか?

最初は、緑本(OSS-DB Silver教科書)の「インストール」の章に書かれていた、「Linux環境へPostgreSQLをソースコードから取得する」方法を試みていた。でも、記事(OSS-DB Silverのための環境構築 #1/5~#5/5)に記録したとおり、かなり苦戦してしまった。
そこで、師匠からゴール意識を持つよう助言された。

ゴール意識=「データベースを構築して、学習する」

さらにそれを、抽象化せよと。
抽象化=「(データベースを構築せずに)誰かが用意してくれたデータベースを使って、学習する」

そして、それを実現するための方法として、PostgreSQLをクラウド上で使えるサービス「DBeaver」を教えてくださった。

本来であればこの抽象化と、さらに「PostgreSQLをクラウド上で使えるサービスがあるのではないか?」と仮説立てするところまで自分でしなければならなかったのだけれど、今の自分は至らず、師匠に導いてもらった。

ElephantSQLはPostgreSQLをクラウド上で扱えるようにするサービスなので、ElephantSQLを使って学習しても問題は無い!
ただ、あくまで学習に入るための応急処置であって、いずれvagrantを使った環境構築は再挑戦する。

情報整理

DBeaver=無料のマルチプラットフォームデータベースツール。PostgreSQLを含む主要なデータベースをサポートしている。

PostgreSQL=オブジェクトリレーショナルデータベース管理システム(ORDBMS)。オープンソースのリレーショナルデータベース管理システム(RDBMS)。RDBMSは、RDBをコンピュータ上で操作できるようにした管理システム。(参考:「PostgreSQL 12.4文書」,「PostgreSQLとは? 初めてデータベースに触る人のための『PostgreSQL徹底入門 第4版』から紹介」)

ElephantSQL=クラウドでPostgreSQLを使えるサービス。クラウド上のサーバーPCにElephantSQLの運営がインストール、設定してくれて直ぐに手軽に使えるモノ →なので自分自身のPCや自分が用意したクラウドサーバーにインストール・設定が不要。

前回(DBeaverでElephantSQLを使う ~PostgreSQLとElephantSQLの違い~)DBeaverのインストールは完了したので、今回は接続からおこないます。

ElephantSQLについてはググっても情報が少なく、今回の目的にピタリとあてはまる記事は見当たりませんでした。なので、接続できるよう自分なりに試してみます。

DBeaverでElephantSQLを使えるようにする。

1.DBeaverを起動する
ホストPCにインストール済みのDBeaverを起動します。

2.左上のコンセントマークをクリック。

3.PostgreSQL(象マーク)をクリック→「次へ」

「ElephantSQL」という選択肢は無い。PostgreSQLを選択したが、これで良いのか自信無い。

4.接続情報を入力。
以前、 動画(「สอนใช้ PostgreSQL Online ฟรี ไม่ผูกบัตรเครดิต ด้วย ElephantSQL」)に沿って作ったElephantSQLのアカウントにログインし、作ったInstanceをクリックし、表示された下記DistanceをもとにDBeaverに接続情報を入力する。
【DBeaver画面】

【ElephantSQL画面】

【入力情報】
Host=ElephantSQLの「Server」(.comまで。(arjuna-01は省く。))
Database=ElephantSQLの「Default database」
Port=そのまま(5432)
ユーザー名=ElephantSQLの「User」
パスワード=ElephantSQLの「Password」

5.「テスト接続」をクリック。
接続済みのダイアログボックスが表示される→「OK」

6.「終了」をクリック

7.データベースナビゲータ タブに接続が表示されていることを確認。接続完了!!

おわりに

無事に完了してほっとしました。
次はDBeaverでElephantSQLを触ってみます。