はじめに
今回は、前回の記事でローカル環境で動かしたPostgreSQLデータベースを、GUIツールDBeaverを使用してのぞいてみるまでの手順をまとめてみました。
少しでも参考になれば幸いです。
1. DBeaverのインストール
ターミナルで以下のコマンドを実行し、Homebrewでインストールします。
(公式サイトからもインストール可能です)
brew install --cask dbeaver-community
インストール後は以下のコマンドで起動します。
open -a DBeaver
このような初期画面が表示されます。
2. DBコンテナを起動する
ターミナルでプロジェクトルートから以下のコマンドを実行します。
docker compose up --build
# もしくはdbサービスだけ起動(バックグラウンド)
docker compose up -d db
3. マイグレーションとseedを流す
コンテナの起動後、別のターミナルで以下のコマンドを実行し、テーブルを準備します(詳しくは前回の記事をご参照ください)
# 個別に流す場合
docker compose exec dev pnpm db:migrate # migrations/*.sql を適用してテーブル作成
docker compose exec dev pnpm db:seed # events 1件 + stamps 2件 を冪等投入
# クリーンな状態から確実にやり直すなら(破壊的・ローカル限定)
docker compose exec dev pnpm db:reset
4. DBeaverで新規接続を作成する
①画面左上の逆三角を押します。
②「New Database Connection」を押します。
①「Score」順に並べます。
②上の方に出てくる「PostgreSQL」を選択します。
③「Next」を押します。
「Main」タブを開きます。
①「Host」で接続を選択します。
②「Host」にはlocalhostを入力します。
③「Port」には5432を入力します。
④「Database」にはPOSTGRES_DBで設定した値を入力します。
⑤「Username/password」認証方式を選択します。
⑥「Username」にはPOSTGRES_USERで設定した値を入力します。
⑦「Password」にはPOSTGRES_PASSWORDで設定した値を入力します。
→「Save password」(パスワードを保存)にチェックを入れておくと毎回入力不要になるます
⑧「Test Connection」を押します。
※DBeaverはmacOSホストから繋ぐのでlocalhost:5432を使います。
初回はPostgreSQL JDBCドライバのダウンロードを求められます。
「Download」を押します。
DBeaver本体にはPostgreSQLのJDBCドライバ(postgresql-*.jar)がわざと入っていません。
ライセンス都合とサイズ削減のため、初回接続時に Maven Central からダウンロードする設計です。
そのため、brew install直後は「本体はあるがドライバJARは空」という未完成な状態になります。
以下のようなエラーが出ました。
さらに辿っていくとこのようにエラーが出ました。
どうやらドライバのダウンロードが「Broken pipe」で失敗しているようです。
これはDBeaver内蔵JavaからMaven CentralへのHTTPS接続が途中で切断されているという、ネットワーク層の問題です(セキュリティソフトやファイアウォールの関係で発生するそうです)
この場合、同じ環境にいる限りJavaの通信は同じように切られてしまうため、「JARを手動で」入れていきます。
※エラーなくダウンロードが成功した場合はスキップしてください
①JARを入手する
DBeaverが欲しがっているのと同じバージョン42.7.11のJARを取得します。
以下のURLをブラウザのアドレスバーに貼って開くと、postgresql-42.7.11.jarが直接ダウンロードされます。
https://repo1.maven.org/maven2/org/postgresql/postgresql/42.7.11/postgre sql-42.7.11.jar
②DBeaverにJARを登録する
ドライバー設定画面を開き、「Libraries」タブを開きます。
ダウンロードに失敗した項目がすべて赤文字で表示されています。
これらはすべてMaven参照のため、今後も失敗し続けるため一つずつ「Delete」します(下の3行はオプションでデータベース接続には不要です)
①「Add File」を押し、先ほどダウンロードしたjapを選択します。
→赤文字ではなく黒文字であれば大丈夫です。
②「Find Class」を押します。
③「Driver class」に「org.postgresql.Driver」が設定されていることを確認します。
④「OK」を押します。
※ここで登録した.jarファイルは接続のために参照されるため、/Downloads以外のディレクトリを用意する方をおすすめします。
これで再び「Test Connection」を実行すると、無事に接続できました。
「Finish」を押して接続を完了します。
無事に接続が完了しました!
今回は以上になります!










