一尘不染

Linux上的PostgreSQL数据库默认位置

linux

PostgreSQL将所有数据库保留在Linux上的默认目录是什么?


阅读 2826

收藏
2020-06-03

共1个答案

一尘不染

PostgreSQL将保留所有数据库的目录 ”(和配置)称为“数据目录”,它对应于PostgreSQL所谓的“
数据库集群
(有点混乱),该数据库集群与分布式计算无关,它只是表示一个组PostgreSQL服务器管理的数据库和相关对象的数量。

数据目录的位置取决于分布。如果从源代码安装,则默认值为/usr/local/pgsql/data

用文件系统的术语来说,数据库集群将是一个目录,所有数据都将存储在该目录下。我们称其为数据目录或数据区域。选择存储数据的位置完全取决于您。没有默认值,尽管/
usr / local / pgsql / data或/ var / lib / pgsql /
data等位置很受欢迎。(参考

此外,一个正在运行的PostgreSQL服务器的实例与一个集群相关联。可以通过命令行选项或环境变量(通常在运行用户的范围内)将其数据目录的位置传递给服务器守护程序(“
postmaster
”或“ postgres
)。通常,您可以看到正在运行的服务器,如下所示:-D``PGDATA``postgres

[root@server1 ~]# ps auxw |  grep postgres | grep -- -D
postgres  1535  0.0  0.1  39768  1584 ?        S    May17   0:23 /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data

请注意,有可能(尽管不是很频繁)运行同一PostgreSQL服务器的两个实例(相同的二进制文件,不同的进程),它们服务于不同的“集群”(数据目录)。当然,每个实例都将侦听其自己的TCP
/ IP端口。

2020-06-03