我在Linux系统上有一个PostgreSQL数据库,想要从我的Windows PC访问它,但我只找到了包括数据库服务器和客户端的完整安装程序的Windows二进制文件。
是否有任何地方可以获取仅包含PostgreSQL客户端的Windows二进制文件安装程序?
(澄清一下,我想要的是标准的PostgreSQL客户端psql,而不是GUI客户端或独立工具。)
我在Linux系统上有一个PostgreSQL数据库,想要从我的Windows PC访问它,但我只找到了包括数据库服务器和客户端的完整安装程序的Windows二进制文件。
是否有任何地方可以获取仅包含PostgreSQL客户端的Windows二进制文件安装程序?
(澄清一下,我想要的是标准的PostgreSQL客户端psql,而不是GUI客户端或独立工具。)
很遗憾,没有真正的客户端“only”安装程序。
你可以做的就是下载完整的Postgres二进制文件的ZIP归档:
http://www.enterprisedb.com/products-services-training/pgbindownload
然后从中删除“server”部分。
解压缩后,你会得到以下目录:
bin doc include lib pgAdmin III share StackBuilder symbols
你可以删除 doc
,include
,pgAdmin III
,StackBuilder
和 symbols
目录。据我所知(但我不确定),客户端也不需要 share
或 lib
目录,但你需要测试一下。因此只剩下 bin
目录。
我认为在 psql
中本地化错误消息可能需要 share
目录,但我不确定。
在 bin
目录内,你基本上可以删除所有 .exe 文件(当然除了 psql.exe
)。你还可以删除所有 wx*.dll
文件,它们仅适用于 pgAdmin。 libxml2.dll
和 libxslt.dll
也仅适用于服务器。
如果你确实想要其他一些客户端工具,你可能需要保留:
这种方法的一个缺点是需要安装Visual C++ Redistributable。但你也可以通过将从已安装它的某台计算机中的 MSVCR120.DLL
放入 bin
目录来克服这个问题。
这样,您就留下了这些文件(来自bin
目录),需要用于psql客户端:
当然,您也可以从现有的Postgres安装中获取所有这些内容,无需下载ZIP存档。
显然,这不是一个真正的安装程序,但是如果将清理过的目录放入ZIP文件中,则可以分发该ZIP文件,需要此内容的人只需解压缩存档即可。个人认为,unzip
是最好的“安装程序”(我也使用它来安装Postgres服务器,Windows安装程序有太多怪癖)。
iconv.dll
去哪里了,请改为使用 libiconv-2.dll
。请注意,此举不应更改原意。 - Anthony Neace实际上,pgAdmin中有客户端命令行工具。您只需要从https://www.postgresql.org/download/windows/在Windows机器上安装即可。
然后,您就可以在类似C:\Program Files (x86)\pgAdmin III\1.22
或C:\Program Files (x86)\pgAdmin 4\v2\runtime
的文件夹中找到这些工具,这取决于您所安装的pgAdmin版本。
感谢所有在该帖子中发帖的人。
值得一提的是,我只使用了来自zip存档文件中以下文件就在Windows 10下使得PostgreSQL 10.10的psql.exe工作:
libcrypto-1_1-x64.dll
libiconv-2.dll
libintl-8.dll
libpq.dll
libssl-1_1-x64.dll
psql.exe
连接到AWS Redshift时,我遇到了以下错误:
psql: 致命错误: 参数“client_encoding”的值无效:“WIN1252”
我通过运行以下内容解决了这个问题:
set PGCLIENTENCODING=UTF8
我在https://forums.aws.amazon.com/thread.jspa?messageID=600088找到了这个解决方案。
希望对你有所帮助。
我知道这是一个比较老的问题,但当我使用最新版本的Postgres(10.4)的Windows安装程序时,它给了我安装仅命令行工具的选项。在安装程序窗口中提示我选择需要安装的内容时,我只需取消勾选server
和pgadmin
选项即可。
从以下位置下载Postgres 12.4: https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
运行安装程序,它将花费几分钟时间并提示您选择安装选项
选择如下屏幕截图所示的命令行工具
并安装
以上操作将在以下文件夹中安装postgres12命令行:C:\Program Files\PostgreSQL\12\bin
。确保将其添加到您的PATH环境变量中
打开cmd并运行以下命令
set PGCLIENTENCODING=UTF8
运行psql以连接到redshift。请务必更改下面突出显示的参数,以适应您的集群端点、用户ID、复制脚本文件名和日志脚本文件名
psql -h redshift-cluster-1.abcdefgh.us-east-1.redshift.amazonaws.com -U demo_user -d dev -p 5439 -f d:\demo\redshift_script.sql -L d:\demo\log_redshift_script.log
redshift_script.sql文件中的所有命令都将在PSQL中执行,并且日志将存储在log_redshift_script.log文件中
有一款第三方命令行工具可用,名为PGCLI - 一个带有自动完成和语法高亮的Postgres命令行界面。
安装:
pip install pgcli
从命令行连接到POSTGRES服务器:
pgcli -h localhost -U xyz -d app_db
官方文档请访问PGCLI
我为 Windows 和 Linux 建立了独立版本。 它具有较少的 DLL 依赖项和更小的尺寸,并且可以在许多 Linux 上运行。
https://github.com/hemnstill/StandaloneTools/releases?q=pg_dump
pgadmin v4
,则只需将这些库从C:\Program Files\pgAdmin 4\v4\runtime\
复制即可:libcrypto-1_1-x64.dll
libpq.dll
libssl-1_1-x64.dll