PostgreSQL 6 min read

PostgreSQLのバージョン確認 ― SQLとコマンドで調べる方法と最新バージョン

PostgreSQL のバージョンを確認するには、接続して SQL で調べる方法と、OS のコマンドで調べる方法があります。この記事の出力は PostgreSQL 17.6 で採りました。

まず見る(結論)

  • 接続中のサーバーのバージョン: SELECT version(); または SHOW server_version;
  • スクリプトで比較するなら数値の SHOW server_version_num;(17.6 なら 170006)
  • psql 自体のバージョン: psql --version。サーバーとは別物
  • 2026年10月時点の最新メジャーは PostgreSQL 18。サポート中は 14〜18

SQL で確認する

SELECT version();
                                                      version
--------------------------------------------------------------------------------------------------------------------
 PostgreSQL 17.6 (Debian 17.6-2.pgdg13+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 14.2.0-19) 14.2.0, 64-bit
(1 row)

version() はビルドした OS やコンパイラまで含めた長い文字列を返します。番号だけ欲しいときは SHOW server_version; を使います。

SHOW server_version;
        server_version
-------------------------------
 17.6 (Debian 17.6-2.pgdg13+1)
(1 row)

SHOW server_version_num;
 server_version_num
--------------------
 170006
(1 row)

server_version にはパッケージの付加情報(この例では (Debian ...))が付くことがあり、文字列のまま大小比較すると誤ります。「17 以上なら」のような判定は server_version_num を整数にして比べます。

SELECT current_setting('server_version_num')::int >= 170000;
 ?column?
----------
 t
(1 row)

psql の中では変数でも見られます。VERSION_NAME が psql、SERVER_VERSION_NAME が接続先サーバーです。

\echo :VERSION_NAME :SERVER_VERSION_NAME
17.6 (Debian 17.6-2.pgdg13+1) 17.6 (Debian 17.6-2.pgdg13+1)

コマンドで確認する

$ psql --version
psql (PostgreSQL) 17.6 (Debian 17.6-2.pgdg13+1)
$ postgres --version
postgres (PostgreSQL) 17.6 (Debian 17.6-2.pgdg13+1)

psql --version が返すのはクライアントのバージョンです。別のサーバーにつなぐ psql や、複数バージョンを入れたマシンでは、サーバーと一致するとは限りません。postgres --version はサーバー本体のバイナリのバージョンです。ただし PATH に無いことが多く、PGDG のパッケージなら /usr/pgsql-17/bin/postgres のようにバージョン付きのディレクトリにあります。

番号の読み方

PostgreSQL 10 以降は「メジャー.マイナー」の2つの数字です。17.6 は、メジャー 17 の6回目のマイナーリリースです。マイナーリリースはバグとセキュリティの修正だけで、データ形式は変わりません。同じメジャーの中なら、バイナリを入れ替えて再起動するだけで上げられます。メジャーを上げるときは pg_upgrade か、ダンプとリストアが必要です。

9.6 以前は「9.6.24」のように3つの数字で、メジャーは「9.6」まででした。

最新バージョンとサポート期限(2026年10月時点)

公式の Versioning Policy によると、サポート中のバージョンは次のとおりです。

メジャー 最新マイナー 初回リリース サポート終了
18 18.6 2025-09-25 2030-11-14
17 17.11 2024-09-26 2029-11-08
16 16.15 2023-09-14 2028-11-09
15 15.19 2022-10-13 2027-11-11
14 14.24 2021-09-30 2026-11-12

メジャーはおよそ年1回、マイナーは少なくとも3か月に1回出ます。各メジャーは初回リリースから5年サポートされます。14 はあと1か月ほどでサポートが終わるので、使っているなら移行先を決めておきます。

SHOW server_version; の結果を上の表と比べれば、マイナーアップデートが溜まっていないかを確認できます。