program study story

プログラムの勉強 アウトプット

psqlについて_PostgreSQL_接続_切断

psqlとは

コマンドラインベースでPostgreSQLで作成済みのデータベースに接続したりテーブルから取得したりすることが出来るツール。

 

Windows環境からpsqlを利用するにはコマンドプロンプトから行う。

PostgreSQLへ接続

PostgreSQLへ接続するには、次のように実行する。(PostgreSQLで作成し済みの指定したデータベースに接続する)

 

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

 

ホスト名はPostgreSQLが起動しているホスト名またはIPアドレス

(デフォルトの値はlocalhostとなっている。ローカルホストで動いているPostgreSQLに接続する場合は省略可能。)

 

ポート番号は使用するポート番号

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

 

ロール名は-U postgresと指定してください。

PostgreSQLをインストールした直後はスーパーユーザーであるpostgresロールしか作成されていないため。

(ロール名を省略した場合はOSのユーザー名が使用される。PostgreSQLでは、一般的にユーザーと呼ばれるものとグループと呼ばれるものをまとめてロールと呼んでいる。)

 

データベース名には接続するデータベース名を指定します。

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

 

①すべて指定してPostgresSQLに接続する場合

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

 

②ホスト名がlocalhostの場合で、ロール名と同じデータベースに接続する場合

psql -U postgres

 

①と②は同じ意味で認識され、実行されたことになる。

・ホスト名がlocalhostであれば、省略ができ、ポート番号も省略できる。

・ロール名と同じデータベースに接続する場合はデータベース名を省略できる。

 

①と②のどちらかで入力後、Enter押下。

postgresのバスワードを入力後、Enter押下。

接続した場合:

postgresデータベースに接続しているので、posgres=#と表示される。

接続中はデータベース名=#と表示される。

 

 

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

コマンドプロンプトにて、データベース名=#が表示時、

「¥q」を入力し、実行

psqlが終了し、PostgreSQLから切断されると

データベース名=#が表示がなくなります。