2015-11-22 1 views
19

Ich habe eine PostgreSQL-Datenbank auf einem Linux-System, auf das ich von meinem Windows-PC aus zugreifen möchte. Aber die einzigen Windows-Binärdateien, die ich finden konnte, sind das vollständige Installationsprogramm, das den Datenbankserver und den Client enthält.Wie installiere ich nur die Client-Tools für PostgreSQL unter Windows?

Ist es möglich, eine binäre Client-Installation von Windows für PostgreSQL von überall zu erhalten?

(Um zu verdeutlichen, ich möchte die Standard-PostgreSQL-Client, psql - kein GUI-Client oder ein unabhängiges Tool).

+0

Warum verwenden Sie nicht ssh in Ihrem Linux-Rechner und verwenden Sie dort psql? – mehmet

+2

Grundsätzlich, weil alle Skripte, die ich entwickle, auf meinem lokalen PC sind, und von dort aus läuft es einfacher. Meine gesamte Entwicklungsarbeit erfolgt an der Eingabeaufforderung der Windows-Konsole. Daher ist es auch bequemer, von dort aus SQL zu starten. –

+0

Wenn Sie Ihr Linux-System auf einer virtuellen Maschine (z. B. virtuelle Box) haben könnten, könnten Sie vagrant verwenden, das Ihren Windows-Ordner mit Linux synchronisiert, so dass Sie es nahtlos auf beiden Systemen ausführen können. FYI, – mehmet

Antwort

20

Leider gibt es keinen echten Client "nur" Installer.

Was Sie tun können, ist das ZIP-Archiv der gesamten Postgres Binärdateien zum Download:

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

und dann den "Server" Teil von ihm zu entfernen.

Wenn Sie es entpacken, erhalten Sie die folgenden Verzeichnisse:

 
bin 
doc 
include 
lib 
pgAdmin III 
share 
StackBuilder 
symbols 

Sie können entfernen Sie die doc, include, pgAdmin III, StackBuilder und symbols Verzeichnisse. Soweit ich das beurteilen kann (aber ich bin mir nicht sicher), benötigt der Client auch nicht die Verzeichnisse share oder lib, aber Sie müssten das testen. So bleibt nur das Verzeichnis bin übrig.

Ich denke, das share Verzeichnis könnte für lokalisierte Fehlermeldungen in psql benötigt werden, aber ich bin mir nicht sicher.

Im Verzeichnis bin können Sie im Wesentlichen alle .exe-Dateien entfernen (außer psql.exe natürlich). Sie können auch alle wx*.dll Dateien entfernen, sie werden nur für pgAdmin benötigt. Die libxml2.dll und libxslt.dll werden auch nur für den Server benötigt.

Wenn Sie einige der anderen Client-Tools tun wollen, möchten Sie vielleicht

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

Ein Nachteil halten Dieser Ansatz erfordert, dass Visual C++ Redistributable installiert wird. Aber Sie können das auch überwinden, indem Sie einfach die MSVCR120.DLL von einem Computer, wo es installiert ist, in das Verzeichnis bin setzen.

das lässt Sie also mit diesen Dateien (aus dem bin-Verzeichnis), die für den psql Client benötigt:

  • iconv.dll
  • libeay32.dll
  • libintl-8.dll
  • libpq.dll
  • msvcr120.dll
  • ssleay32.dll
  • zlib1.dll
  • psql.exe

Natürlich können Sie auch alles, was von einer bestehenden Postgres-Installation ohne die Notwendigkeit, nehmen Sie das ZIP-Archiv zum Download bereit.


Es ist offensichtlich kein echter Installer, aber wenn Sie das gereinigt Verzeichnis in eine ZIP-Datei setzen, können Sie, dass verteilen und es muss wer packt gerade das Archiv. Persönlich finde ich unzip, um der beste "Installer" trotzdem zu sein (ich benutze das auch, um den Postgres-Server zu installieren, der Windows-Installer hat einfach zu viele Macken)

+0

Danke. Ich bin nicht wirklich besorgt über das Entfernen der nicht benötigten Server-Bits - die Hauptsache, die ich vermeiden möchte, ist der Installer, der Konten, den Service und eine Datenbank erstellt - also ist es einfach, die Zip-Verteilung zu haben. Ich suchte zuerst, aber konnte das Installationsprogramm nur auf der EnterpriseDB-Site finden (die postgresql-Site verweist nur auf http://www.enterprisedb.com/products-services-training/pgdownload und es gibt keinen Link von dort zum bin-Download Seite :-(). –

+0

Whoops. Gerade bemerkte den Link "fortgeschrittene Benutzer" auf der Postgresql.org Download-Seite. Ich muss das letzte Mal verpasst haben. –

+2

Für jeden auf PostgreSQL> = 9.6.3 fragen, wo 'iconv.dll' ging, bringe 'libiconv-2.dll' stattdessen ein. –

8

Eigentlich gibt es Client-CLI-Tools in pgAdmin. Alles, was Sie brauchen, ist nur, um es auf Ihrem Windows-Rechner von https://www.postgresql.org/download/windows/ zu installieren.

Dann werden Sie in der Lage, diese Werkzeuge in Ordner wie C:\Program Files (x86)\pgAdmin III\1.22 oder C:\Program Files (x86)\pgAdmin 4\v2\runtime zu finden, hängt von der PgAdmin-Version, die Sie installiert haben.

Verwandte Themen