【初心者向け】PostgreSQLの接続と切断を分かり易く解説

  • このエントリーをはてなブックマークに追加
  • Pocket

PostgreSQLのダウンロード及びinstallに引き続き、これから、PostgreSQLの接続と切断の方法を紹介する。

PostgreSQLへの接続と切断とは

PostgreSQLを利用するために行なう最初の操作がクライアントからPostgreSQLサーバへの接続だ。そして、操作の終了の操作が切断だ。ここでは、PostgreSQLの正式なクライアントアプリケーションSQL Shell(psql)を使ってサーバに接続する。psqlは対話型のターミナルだ。コマンドを入力すると、サーバからのレスポンスが表示される。

接続ためには、データベース名、ホスト名、ポート番号、ユーザ名を設定する必要がある。これらの値はデフォルトの値を使うこともできるし、パラメータとして指定することもできる。

コマンドの基本的な書き方は簡単だ。

$ psql [オプション] [データベース名]

では、実際の使い方を見てみよう。

PostgreSQLへ接続する

データベースを指定して接続する

あらかじめ作成しておいたデータベース(データベース名:sample)に接続する例だ。

データベースに接続するには名前を指定して、

$ psql sample

とコマンドを叩けばOKだ。

SQL Shellは「sample=#」とデータベース名に続いて「=#」を表示して、コマンドの入力待ちになるはずだ。

インストール直後に接続する

PostgreSQLインストール直後はまだデータベースが作成されていない。このため、データベース名を指定しないで接続する。

オプション-Uを使ってユーザ名:postgresだけを指定して、

$ psql -U postgres

とコマンドを叩けばOKだ。

 

「ユーザpostgresのパスワード:」と聞いてくるので、インストール時に設定したパスワードを入力する。パスワードを正しく入力すると、SQL Shellは「postgres=#」を表示して、コマンドの入力待ちになるはずだ。

オプション無しで接続する

データベースに接続ために必要な情報を指定する必要がある。しかし、毎回この値をオプションとして指定するのはわずらわしい時がある。こういう場合にあらかじめこれらの値を環境変数として設定しておくと手間が省ける。

「オプションと環境変数」のセクションで説明している環境変数をあらかじめ設定して、シンプルなコマンド入力で接続する例を見てみよう。

環境変数を指定していないと、オプション無しのコマンドでエラーになる。しかし、環境変数を指定することによって、

$ psql sample

とコマンドを叩くだけでOKだ。

 

では、切断する方法を見てみよう。

PostgreSQLから切断する

PostgreSQLの利用を終了するために、データベースからの切断の操作を行なう。

SQL Shellから、

# \q

とコマンドを叩けばOKだ。

SQL Shellから抜けて、元のDOSコマンドの入力待ちの表示になる。

オプションと環境変数

PostgreSQLサーバに接続ためは、データベース名、ホスト名、ポート番号、ユーザ名を設定する必要がある。これらの値は、SQL Shellのオプションか環境変数として設定することができる。

オプションと環境変数は次の通りだ。

オプション

環境変数

説明

-d

--dbname

PGDATABASE

データベースを指定する。

-h

--hostname

PGHOST

サーバがあるマシンのホスト名を指定する。

-p

--port

PGPORT

TCPポートかローカルUnixドメインソケットファイルの拡張子を指定する。

-U

--username

PGUSER

ユーザを指定する。

 

PGPASSWORD

パスワードを指定する。

まとめ

このページではPostgreSQLの接続と切断について簡単にご紹介した。参考にしていただければと思う。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメント

  1. 中川 将志 より:

    質問なのですが、PostfreSQLへ接続したいのですが、「psql: 接続用の新しいプロセスをforkできませんでしたNo error」という記述がでてきて接続できません。どうしたらよいのでしょうか。

    1. リナックスアカデミー より:

      ご愛読いただきありがとうございます。
      PostgreSQLのサービスは起動していますでしょうか?
      下記コマンドでサービスを手動起動の後にpsqlでの接続をお試し頂ければと思います。

      [Windows] 管理者権限のコマンドプロンプトより
      net start postgresql-x64-9.5

      ※「9.5」の所はインストールしたバージョンによって異なります

      [CentOS7] root権限のコンソールより
      systemctl start postgresql

コメントを残す

*

ゼロからエンジニアを目指す方へ
短期間でエンジニアになる方法

必要な勉強や技術の最新動向、本当に使えるIT資格、学習に役立つ国からの奨励金などの情報を無料でお届け

資料を見てみる