centos7 postgresql 自定义PGDATA与systemd 改变数据文件存放位置

自定义PGDATA与systemd

 

默认情况下,在CentOS 7上,PostgreSQL v10数据目录位于/ var / lib / pgsql / 10 / data中。

这是一个简单的技巧,可以轻松地将其放置在其他地方,而无需使用符号链接。


首先,安装PostgreSQL 10:

yum install -y https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-7.noarch.rpm
yum install -y postgresql10-server

如果您希望将数据放在(例如)/ pgdata / 10 / data中,请创建具有良好权限的目录:

# mkdir -p /pgdata/
# chown -R postgres:postgres /pgdata

然后,自定义systemd服务:

# systemctl edit postgresql-10.service

添加以下内容:

[Service]
Environment=PGDATA=/pgdata/

这将创建一个/etc/systemd/system/postgresql-10.service.d/override.conf将与原始服务文件合并的文件。

要检查其内容:

# cat /etc/systemd/system/postgresql-10.service.d/override.conf
[Service]
Environment=PGDATA=/pgdata/10/data

重新加载系统:

# systemctl daemon-reload

初始化PostgreSQL数据目录:

# /usr/pgsql-10/bin/postgresql-10-setup initdb

启动并启用该服务:

# systemctl enable postgresql-10
# systemctl start postgresql-10

还有瞧!就是这么简单。

你可能感兴趣的:(postgresql,centos7,pgdata,systemctl)