ホーム > その他外部パッケージ > psql

psql: PostgreSQL 対話型ターミナル

psqlは、PostgreSQLデータベースに接続してSQLクエリを実行し、データベースオブジェクトを管理し、メタデータを照会できるコマンドラインクライアントツールです。対話モードとスクリプト実行モードの両方をサポートしています。

概要

psqlは、PostgreSQLデータベースと対話するための強力なツールです。SQLコマンドだけでなく、データベース管理タスクを簡素化するさまざまなメタコマンド(バックスラッシュコマンド)を提供します。

主な機能

  • SQLクエリの実行
  • データベースおよびテーブルの管理
  • ユーザーおよび権限の設定
  • スクリプトファイルの実行
  • 対話型シェル環境の提供

主なオプション

psqlコマンドラインで使用できる主なオプションです。

接続オプション

コマンド実行オプション

生成されたコマンド:

コマンドを組み合わせてみてください。

説明:

`psql` コマンドを実行します。

これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。

使用例

psqlコマンドのさまざまな使用例です。

デフォルトデータベースへの接続

psql

デフォルトユーザー(現在のシステムユーザー)でデフォルトデータベースに接続します。

特定のデータベースとユーザーで接続

psql -U myuser -d mydb -W

myuserユーザーでmydbデータベースに接続します。パスワード入力プロンプトが表示されます。

リモートサーバーに接続

psql -h db.example.com -p 5432 -U postgres

リモートホスト(db.example.com)の5432ポートにpostgresユーザーで接続します。

単一SQLコマンドの実行

psql -U postgres -d postgres -c "SELECT version();"

データベースバージョンを照会するSQLコマンドを実行し、psqlを終了します。

SQLスクリプトファイルの実行

psql -U postgres -d mydb -f script.sql

script.sqlファイルにあるSQLコマンドを実行します。

データベース一覧の照会

psql -l

現在のPostgreSQLサーバーにあるすべてのデータベースの一覧を表示します。

インストール

psqlはPostgreSQLクライアントパッケージの一部として提供されます。ほとんどのLinuxディストリビューションでは、PostgreSQLサーバーをインストールせずにクライアントツールのみを別途インストールできます。

Debian/Ubuntu

sudo apt update
sudo apt install postgresql-client

aptパッケージマネージャーを使用してPostgreSQLクライアントツールをインストールします。

RHEL/CentOS/Fedora

sudo dnf install postgresql

yumまたはdnfパッケージマネージャーを使用してPostgreSQLクライアントツールをインストールします。

ヒントと注意点

psqlをより効率的に使用するためのヒントと注意点です。

主なpsqlメタコマンド

psqlシェル内でバックスラッシュ(\)で始まるコマンドを使用して、さまざまなタスクを実行できます。

  • \l: すべてのデータベース一覧を表示
  • \dt: 現在のデータベースのテーブル一覧を表示
  • \du: すべてのユーザー(ロール)一覧を表示
  • \d <table>: 特定のテーブルのスキーマ情報を表示
  • \q: psqlを終了
  • \?: すべてのメタコマンドに関するヘルプを表示

環境変数の活用

頻繁に使用する接続情報を環境変数に設定することで、psqlコマンドを簡略化できます。

  • PGHOST: ホスト名またはIPアドレス
  • PGPORT: ポート番号
  • PGUSER: ユーザー名
  • PGDATABASE: データベース名
  • PGPASSWORD: パスワード(セキュリティ上の理由から推奨されません。.pgpassファイルの使用を推奨)

.pgpassファイル

パスワードをコマンドラインや環境変数に公開せず安全に保存するには、~/.pgpassファイルを使用することをお勧めします。このファイルは、特定のホスト、ポート、データベース、ユーザー名に対するパスワードを保存し、psqlが自動的に認証できるようにします。


同じカテゴリのコマンド