1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

データーベースを確認したい

Posted at

はじめに

データベースを確認する場面はよくあることだと思いますが、私はここら辺をあまりじっくり取り組んだことが少ないことから、どのような手順でたどり着くことができるのか。アウトプットがてら投稿したいと思います。

どういう状況だったのか

  • 新規登録機能を作ったがデータベースにちゃんと反映されているのか確認したい
  • PostgreSQLを使用している

コンテナ内に入る手順

  1. コンテナの確認
    まず、現在稼働しているコンテナを確認します。以下のコマンドで、実行中のコンテナのリストを取得します。

    docker ps
    

    このコマンドで表示されたリストから、PostgreSQL が稼働しているコンテナのコンテナ ID をメモします。

    Image from Gyazo

    上記画面の場合は、PostgreSQL コンテナの ID は 9c53f5eeaa95 ですので、これを使ってコンテナ内にアクセスし、psql コマンドを使ってデータベースに接続できます。

    PostgreSQL コンテナにアクセスする手順

  2. PostgreSQL コンテナにアクセス

    次のコマンドで PostgreSQL コンテナにアクセスします:

    docker exec -it 9c53f5eeaa95 psql -U postgres
    

    これで PostgreSQL のクライアントツールにアクセスできるはずです。

  3. データベースに接続

    PostgreSQL コンテナ内で psql が起動したら、次のコマンドでデータベースに接続します:

    \c myapp_development
    

    これで myapp_development データベースに接続できます。

  4. データベースやテーブルの確認

    接続したデータベース内で、テーブルやデータの確認を行います。例えば、テーブルの一覧を確認するには次のコマンドを使用します:

    \dt
    

    特定のテーブルの構造を確認するには、次のコマンドを使用します:

    \d users
    

    これで users テーブルの詳細が表示されます。

私の流れは下記のような感じでした

$ docker exec -it 9c53f5eeaa95 psql -U postgres
psql (16.3 (Debian 16.3-1.pgdg120+1))
Type "help" for help.

postgres=# \c myapp_development
You are now connected to database "myapp_development" as user "postgres".
myapp_development=# \d users
                                             Table "public.users"
      Column      |              Type              | Collation | Nullable |              Default
------------------+--------------------------------+-----------+----------+-----------------------------------
 id               | bigint                         |           | not null | nextval('users_id_seq'::regclass)
 email            | character varying              |           | not null | 
 crypted_password | character varying              |           |          | 
 salt             | character varying              |           |          | 
 created_at       | timestamp(6) without time zone |           | not null | 
 updated_at       | timestamp(6) without time zone |           | not null | 
 name             | character varying              |           | not null |
Indexes:
    "users_pkey" PRIMARY KEY, btree (id)
    "index_users_on_email" UNIQUE, btree (email)

さいごに

今回はデーターベースの確認についてまとめてみました。どのような構造化を把握するときに、少しでも参考になれば幸いです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?