永久设置PGDATA环境变量Mac

时间:2016-05-24 18:42:27

标签: postgresql macos shell

要启动Postgres服务器,我需要运行以下命令:

pg_ctl -D /usr/local/var/postgres start
export PGDATA='/usr/local/var/postgres'

是不是有办法永久定义PGDATA并且从那里只使用像pg_ctl start这样的命令在shell中运行?感谢。

2 个答案:

答案 0 :(得分:2)

你在那里一半。您可能想要做的唯一事情是,只要您通过将PGDATA行添加到shell配置文件来打开终端,就可以获得export。在我的macOS机器上,我添加了以下行: export PGDATA='/Users/john/.postgres'~/.bash_profile个文件。如果要通过执行. ~/.bash_profile命令立即查看效果,请不要忘记获取它。从现在开始,只需输入pg_ctl start即可启动海报服务器。希望值得等待答案。 :)

答案 1 :(得分:1)

export将设置当前会话的上下文。因此,我们需要破解我们的终端,以便将这个PGDATA env变量导出到每个会话。

如果您使用的是zsh,则只需执行以下命令即可。

echo "export PGDATA='/usr/local/var/postgres'" >> ~/.zshrc

如果您不使用zsh,请在上述命令中将~/.zshrc替换为~/.bashrc~/.profile

然后,执行source ~/.zshrc以查看即时效果。您可以使用echo $PGDATA命令立即检查。

无论何时打开新终端,默认情况下您的环境变量都将可用。