PostgreSQLへの接続と切断

psql を使用して PostgreSQL へ接続を行ったり、 PostgreSQL から切断することができます。ここでは psql を使って PostgreSQL へ接続する方法および PostgreSQL から切断する方法について解説します。

(Last modified: )

PostgreSQLへ接続する

psql はコマンドラインベースで PostgreSQL で作成済みのデータベースに接続したりテーブルからデータを取得したりすることが出来るツールです。 Windows環境から psql を利用するにはコマンドプロンプトから行います。

最初にコマンドプロンプトを起動してください。(コマンドプロンプトの起動方法については「コマンドプロンプトを起動する」を参照されてください)。

PostgreSQLへ接続する(1)

psql を使って PostgreSQL へ接続するには次のように実行します。(実際には PostgreSQL で作成済みの指定したータベースに接続します)。

psql -h ホスト名 -p ポート番号 -U ロール名 -d データベース名

ホスト名は PostgreSQL が起動しているホスト名または IP アドレスです。デフォルトの値が localhost となっていますので、ローカルホストで動いている PostgreSQL に接続する場合は省略できます。

ポート番号は使用するポート番号です。デフォルトの値が PostgreSQL のインストール時に設定した値(通常は 5432 )となっているので別のポート番号を使用するとき以外は省略できます。

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

※ PostgreSQL では一般的にユーザーと呼ばれるものとグループと呼ばれるものをまとめてロールと呼んでいます。

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

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

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

locahost の場合はホスト名の指定は省略でき、ポート番号も省略できます。またロール名と同じデーベースに接続する場合はデータベース名を省略できるので、次のように実行しても同じです。

psql -U postgres

それでは実際に実行してみます。

PostgreSQLへ接続する(2)

接続しようとしているロール名のログイン用パスワードの入力待ちとなります。 postgres ロールのパスワードは PostgreSQL のインストールの時に指定したものです。入力を行ってから最後に [Ener] キーを押してください。正しく入力できれば次のような画面が表示されます。

PostgreSQLへ接続する(3)

接続中は データベース名=# と表示されます。現在は postgres データベースに接続しているので posgres=# と表示されています。

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

psql を終了して PostgreSQL から切断を行うには次のように実行してください。

\q

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

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

-- --

psql を使って PostgreSQL へ接続する方法および PostgreSQL から切断する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。