1. ホーム
  2. windows

WindowsでPostgreSQLのクライアントツールだけをインストールするにはどうしたらいいですか?

2023-07-30 08:49:12

質問

私は Windows PC からアクセスしたい Linux システム上の PostgreSQL データベースを持っています。しかし、私が見つけることができた唯一の Windows バイナリは、データベースサーバーとクライアントを含む完全なインストーラーでした。

PostgreSQL のクライアントのみの Windows バイナリインストールをどこかから入手することは可能でしょうか?

(明確にするために、私は標準のPostgreSQLクライアントであるpsqlが欲しいのです - GUIクライアントや独立したツールではありません)。

どのように解決するのですか?

残念ながら、本当のクライアントのインストーラは存在しません。

できることは、完全な Postgres バイナリの ZIP アーカイブをダウンロードすることです。

http://www.enterprisedb.com/products-services-training/pgbindownload

で、そこから"server"の部分を削除してください。

解凍すると、以下のようなディレクトリができます。

ビン
doc
インクルード
lib
pgAdmin III
共有
スタックビルダー
シンボル

を削除することができます。 doc , include , pgAdmin III , StackBuildersymbols ディレクトリを作成します。私が知る限り (しかし、私は確信していません)、 クライアントには share または lib ディレクトリを作成することができますが、これはテストする必要があります。ということで、残るは bin ディレクトリだけが残ります。

私は、このディレクトリにある share ディレクトリは、ローカライズされたエラーメッセージのために必要です。 psql のエラーメッセージをローカライズするために必要かもしれませんが、それについてはよくわかりません。

の中には bin ディレクトリの中では、基本的にすべての .exe ファイルを削除することができます (ただし psql.exe を除く)。また、すべての wx*.dll ファイルはpgAdminにのみ必要です。これらはpgAdminにのみ必要です。 libxml2.dlllibxslt.dll もサーバにのみ必要です。

他のクライアントツールを使いたい場合は

  • pg_dump.exe
  • pg_dumpall.exe
  • pg_restore.exe

この方法の欠点は、Visual C++ Redistributable がインストールされている必要があることです。しかし、これも単に MSVCR120.DLL がインストールされているどこかのコンピュータから bin ディレクトリにインストールされます。

ということは、これらのファイル ( bin ディレクトリの) ファイルが残ります。

  • iconv.dll (新しいPostgresバージョンではlibiconv-2.dll)
  • libeay32.dll
  • libintl-8.dll
  • libpq.dll
  • msvcr120.dll
  • ssleay32.dll
  • zlib1.dll
  • psql.exe

もちろん、ZIPアーカイブをダウンロードすることなく、既存のPostgresのインストールからすべてを取得することも可能です。


これは明らかに本当のインストーラーではありませんが、クリーンアップされたディレクトリを ZIP ファイルに入れれば、それを配布することができ、必要な人はアーカイブを解凍するだけです。個人的には unzip が最高のインストーラだと思います (私は Postgres サーバーをインストールする際にもこれを使用します。Windows インストーラは癖がありすぎるのです)。