PostgreSQL | psql を使用して PostgreSQL に接続 | PostgreSQL への接続と切断

psql を使用して PostgreSQL に接続する方法と、PostgreSQL から切断する方法について説明する。

PostgreSQL に接続する

psql は、コマンドラインから PostgreSQL で作成されたデータベースに接続したり、テーブルのデータを検索したりできるツールである。Windows 環境で psql を使用する場合は、コマンドプロンプトから実行する。

まず、コマンドプロンプトを起動する。

psql を使用して PostgreSQL に接続するには、次のように実行する。実際には、PostgreSQL で作成された指定のデータベースに接続する。

psql -h {ホスト名} -p {ポート番号} -U {ユーザー名} -d {データベース名}

ホスト名は PostgreSQL が実行されているホスト名または IP アドレスである。既定値は localhost なので、ローカルホストで実行中の PostgreSQL に接続する場合は省略できる。

ポート番号は PostgreSQL が使用するポート番号である。既定値は PostgreSQL のインストール時に設定される 5432 なので、別のポート番号を使用していない限り省略できる。

ユーザー名は、PostgreSQL をインストールした直後はスーパーユーザーである postgres ロールしか作成されていないため、-U postgres を指定する。ユーザー名を省略すると、OS のユーザー名が使用される。

注: PostgreSQL では、一般的にユーザーとグループをまとめてロールと呼ぶ。

データベース名には、接続するデータベースの名前を指定する。省略すると、ユーザー名と同じ名前のデータベースに接続する。postgres データベースは自動的に作成され、postgres ロールで接続した場合は postgres データベースに接続される。

すべて指定して PostgreSQL に接続する場合は、次のようになる。

psql -h localhost -p 5432 -U postgres -d postgres

ホストが localhost であればホスト名の指定は省略でき、ポート番号も省略できる。また、ユーザー名と同じデータベースに接続する場合はデータベース名も省略できるため、次のように実行しても上記と同じである。

psql -U postgres

実際に実行してみる。

C:\>psql -U postgres
postgres ユーザーのパスワード:

接続しようとしているユーザーのログインパスワード入力待ちになる。postgres のパスワードは PostgreSQL のインストール時に指定したものである。入力後、Enter キーを押す。正しく入力できていれば、次のような画面が表示される。

C:\>psql -U postgres
postgres ユーザーのパスワード:
psql (12.2)
ヘルプを表示するには "help" と入力してください。

postgres=#

接続中は データベース名=# と表示される。ここでは postgres データベースに接続しているため、postgres=# と表示されている。

psql を終了して PostgreSQL から切断する

psql を終了して PostgreSQL から切断するには、次のように実行する。

\q
C:\>psql -U postgres
postgres ユーザーのパスワード:
psql (12.2)
ヘルプを表示するには "help" と入力してください。

postgres=# \q

C:\>

psql が終了し、PostgreSQL から切断された。

psql を使用して PostgreSQL に接続する方法と、接続を切断する方法について説明した。