psqlのオプションの使い方とオプション一覧

psql を実行する時には接続に使用するロール名やデータベースを指定するオプション以外にもいくつかのオプションが用意されています。ここでは PostgreSQL にて psql を実行する時に指定できるオプションの使い方とオプションの一覧について解説します。

(Last modified: )

psqlオプションの使い方

コマンドプロンプトから psql を実行する時にはいくつかのオプションが用意されています。よく使用するのは PostgreSQL に接続する時に使用する -h や -U のオプションですが、例えば -V のように PostgreSQL のバージョンを表示してすぐに終了するものもあります。

psql -V

psqlオプションの使い方(1)

また -? はオプションの一覧を表示するオプションです。(オプションの一覧はこのページの最後に掲載しています)。

psql -?

psqlを実行する時のオプション一覧(2)

また psql を使って PostgreSQL に接続したあとの表示方法に関するものもあります。例えば PostgreSQL に接続した後でデータベースの一覧を表示すると次のように表示されます。

psqlを実行する時のオプション一覧(3)

オプションの一つである -H オプションを付けて psql を実行し PostgreSQL に接続すると、同じデータベースの一覧を取得すると HTML のテーブルタグを使って形式で出力されるようになります。

psql -H -U postgres

psqlを実行する時のオプション一覧(4)

psqlを実行する時のオプション一覧(5)

このように psql のオプションには色々な機能が用意されていますので、このあとのオプション一覧を一度確認しどんなことができるのかを確認されておくと便利に使うことができるのではないかと思います。

オプション一覧

オプションの一覧は次の通りです。

一般的なオプション:

オプション説明
-c, --command=コマンド単一の(SQLまたは内部)コマンドを一つだけ実行して終了
-d, --dbname=DB名接続するデータベース名 (デフォルト: "xxxx")
-f, --file=FILENAMEファイルからコマンドを読み込んで実行後、終了
-l(エル), --list使用可能なデータベース一覧を表示して終了
-v, --set=, --variable=名前=値psql 変数 '名前' に '値' をセット(例: -v ON_ERROR_STOP=1)
-V, --versionバージョン情報を表示して終了
-X, --no-psqlrc初期化ファイル (~/.psqlrc) を読み込まない
-1 (数字の1), --single-transaction(対話形式でない場合)単一のトランザクションとして実行
-?, --help[=options]このヘルプを表示して終了
--help=commandsバックスラッシュコマンドの一覧を表示して終了
--help=variables特殊変数の一覧を表示して終了

入出力オプション:

オプション説明
-a, --echo-allスクリプトから読み込んだ入力をすべて表示
-b, --echo-errors失敗したコマンドを表示
-e, --echo-queriesサーバへ送信したコマンドを表示
-E, --echo-hidden内部コマンドが生成した問い合わせを表示
-L, --log-file=FILENAMEセッションログをファイルに書き込む
-n, --no-readline拡張コマンドライン編集機能(readline)を無効にする
-o, --output=FILENAME問い合わせの結果をファイル (または |パイプ)に送る
-q, --quiet静かに実行 (メッセージなしで、問い合わせの出力のみ)
-s, --single-stepシングルステップモード (各問い合わせごとに確認)
-S, --single-line単一行モード (行末で SQL コマンドを終端)

出力フォーマットのオプション:

オプション説明
-A, --no-align桁揃えなしのテーブル出力モード
-F, --field-separator=文字列桁揃えなし出力時のフィールド区切り文字(デフォルト: "|")
-H, --htmlHTML テーブル出力モード
-P, --pset=変数[=値]表示オプション '変数' を '値' にセット(\pset コマンドを参照)
-R, --record-separator=文字列桁揃えなし出力におけるレコード区切り文字(デフォルト: 改行)
-t, --tuples-only行のみを表示
-T, --table-attr=TEXTHTMLテーブルのタグ属性をセット (width, border等)
-x, --expanded拡張テーブル出力に切り替える
-z, --field-separator-zero桁揃えなし出力のフィールド区切りをバイト値の0に設定
-0, --record-separator-zero桁揃えなし出力のレコード区切りをバイト値の0に設定
aaabbb

接続オプション:

オプション説明
-h, --host=HOSTNAMEデータベースサーバのホストまたはソケットのディレクトリ(デフォルト: "ローカルソケット")
-p, --port=PORTデータベースサーバのポート番号(デフォルト: "5432")
-U, --username=USERNAMEデータベースのユーザ名 (デフォルト: "xxxx")
-w, --no-passwordパスワード入力を要求しない
-W, --passwordパスワードプロンプトの強制表示(本来は自動的に表示)

-- --

psql のオプションの使い方とオプションの一覧について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

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