为 Postgres 创建符号链接

Edw*_*win 3 database postgresql symbolic-link 12.04

作为一名开发人员,我经常 ssh 直接进入我的本地数据库,只是为了在推送我的代码之前测试我的应用程序。

但是,我发现每次要访问Postgres时,都必须输入

postgres@ubuntu:~$ /usr/local/pgsql/bin/psql test
Run Code Online (Sandbox Code Playgroud)

而在我的工作机器上,我所要做的就是输入

postgres@ubuntu:~$ psql --dbname=test --username=user
Run Code Online (Sandbox Code Playgroud)

我尝试创建一个成功的符号链接,但是每当我尝试通过此快捷方式连接到它时,我都会收到以下错误消息:

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
Run Code Online (Sandbox Code Playgroud)

我如何让这个工作?以防万一,我使用的是 9.1.x 系列的自编译版本。

编辑:我现在知道这并不是真正的符号链接,但我不确定它叫什么,或者我确定我已经在谷歌上找到了它。基本上,我希望它通过键入psql [OPTIONS]likervm [OPTIONS]ruby [OPTIONS].

我知道有一个包名为postgresql-client-common& 一堆其他 Postgres 包apt-get,但我不希望使用该apt-get版本,以便我可以即时更新 Postgres。

pap*_*hou 5

如果这只是直接调用 psql 的问题,则需要确保在登录时将路径“/usr/local/pgsql/bin”包含在 $PATH 中。通常这与适当地设置 PATH 变量有关在 /etc/profile(或 ~/.profile)中,或者如果您正在使用 bash,那么这将是 /etc/bashrc 或 ~/.bashrc。

例如

导出 PATH="$PATH:/usr/local/psql/bin"

另外.. psql 命令期望参数如下;psql <dbname> <username> (您可以使用 --flags 来指定相同的内容)。

如果您提供“psql test”-那么它将假定当前用户的用户名(如 whoami 命令所见)。

希望这可以帮助。