概要
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が自動的に認証できるようにします。