Java を使用して PostgreSQL のバージョンを検索し、Java コードを使用して PostgreSQL サーバーを起動することは可能ですか?
バージョンを確認するために、PostgreSQL データ ディレクトリの下にバージョンがある PG_VERSION ファイルがありますが、このファイルは編集できるため、信頼できません。私を助けてください。どんな提案でも大歓迎です。
Java を使用して PostgreSQL のバージョンを検索し、Java コードを使用して PostgreSQL サーバーを起動することは可能ですか?
バージョンを確認するために、PostgreSQL データ ディレクトリの下にバージョンがある PG_VERSION ファイルがありますが、このファイルは編集できるため、信頼できません。私を助けてください。どんな提案でも大歓迎です。
DatabaseMetaDataを使用してサーバーのバージョンを確認することもできます 。サーバーに関する情報を取得するためのヘルパー メソッドがあります。getDatabaseProductVersion()
、 getDatabaseMajorVersion()
は、getDatabaseMinorVersion()
データベース サーバーのバージョンを示します。
クイックグーグルでクエリを明らかにします:
select version();
JDBC を介して実行します。とにかく Java を使用します。postgresサーバー自体の実行に関しては、古い方法でRuntime.exec/ProcessBuilder
うまくいくと思います。その上にある種のスクリプトを作成したいかもしれませんが、それが機能する方法は他にないと思います。
Linuxマシンで実行している場合は、サーバーをサービスとしてインストールしてそれぞれ実行する必要があるかもしれませんが、Javaの観点からは(本当にJavaから実行したい場合)、外部プロセスの呼び出しです。
お役に立てれば
PG_VERSION
を編集すると、サーバーは起動しません。そうしないでください。一般に、PostgreSQL の data-dir は直接編集できません。
実行時SELECT version()
に、実行中のサーバーのバージョンを取得するために使用できます。
サーバーは で起動および停止できますpg_ctl
。postgres --version
サーバーが実行中かどうかに関係なく、サーバー バイナリのバージョンを確認できますpg_ctl --version
。
バイナリと datadir の場所は、サーバーのインストール方法に関して制御できるものです。
クエリの実行: select version()
は、posgresql の正確なバージョンを提供します。