Vit*_*its 5 linux postgresql centos postgresql-9.3 centos7
最近我遇到了使用自定义PGDATA路径启动postgresql服务的问题.它试图查看未初始化的默认数据目录(/var/lib/pgsql/9.3/data/),因此触发了这些错误.似乎问题是Centos 7上的服务启动器剥离了所有环境变量,包括PGDATA.
有没有办法配置
service postgresql-9.3 start
Run Code Online (Sandbox Code Playgroud)
使用自定义环境变量?是否有必须定义这些变量的服务的配置文件?
先感谢您!
小智 13
感谢上面的回答,我们今天刚刚遇到了这个变化.您还可以保留默认设置,并通过将以下内容放在/etc/systemd/system/postgresql-9.3.service中来覆盖PGDATA变量:
# Include the default config:
.include /lib/systemd/system/postgresql-9.3.service
[Service]
Environment=PGDATA=<your path here>/pgsql/9.3/data
Run Code Online (Sandbox Code Playgroud)
这样就无需将/usr/lib/systemd/system/postgresql-9.3.service中的更改重新集成回本地副本.
好的,我得到了一个适合我的解决方案.
nano /etc/systemd/system/postgresql-9.3.service
Run Code Online (Sandbox Code Playgroud)
从/usr/lib/systemd/system/postgresql-9.3.service和PGDATA变量复制的内容已更改.然后
systemctl daemon-reload
Run Code Online (Sandbox Code Playgroud)
然后我正常启动服务,它工作正常.诀窍是更改此服务配置文件.