要启动Postgres服务器,我需要运行以下命令:
pg_ctl -D /usr/local/var/postgres start
export PGDATA='/usr/local/var/postgres'
是不是有办法永久定义PGDATA并且从那里只使用像pg_ctl start
这样的命令在shell中运行?感谢。
答案 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
命令立即检查。
无论何时打开新终端,默认情况下您的环境变量都将可用。