当前位置:  开发笔记 > 前端 > 正文

Linux上的PostgreSQL数据库默认位置

如何解决《Linux上的PostgreSQL数据库默认位置》经验,为你挑选了5个好方法。

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



1> leonbloy..:

" postgresql将保留所有数据库的目录 "(和配置)称为"数据目录",对应于PostgreSQL调用的(有点令人困惑的)" 数据库集群 ",它与分布式计算无关,它只是意味着一个组由PostgreSQL服务器管理的数据库和相关对象.

数据目录的位置取决于分发.如果从源安装,则默认为/usr/local/pgsql/data:

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

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

[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端口.



2> silent..:
/var/lib/postgresql/[version]/data/

至少在Gentoo Linux和Ubuntu 14.04默认情况下.

你可以找到postgresql.conf并看看param data_directory.如果注释,则数据库目录与此配置文件目录相同.


这取决于分布,它们都会略有不同.如果您可以连接到系统,使用"SHOW data_directory"可能是最简单的方法.
对于Centos 7,postgres 9.3路径`/ var/lib/pgsql/9.3`

3> Roby Sottini..:

连接到数据库并执行命令:

SHOW data_directory;

更多信息:

https://www.postgresql.org/docs/current/sql-show.html https://www.postgresql.org/docs/current/runtime-config-file-locations.html



4> Léo Léopold ..:

使用包管理器apt-get安装后,在Debian 8.1和PostgreSQL 9.4中默认

ps auxw |  grep postgres | grep -- -D
postgres 17340  0.0  0.5 226700 21756 ?        S    09:50   0:00 /usr/lib/postgresql/9.4/bin/postgres -D /var/lib/postgresql/9.4/main -c config_file=/etc/postgresql/9.4/main/postgresql.conf

显然/var/lib/postgresql/9.4/main.



5> 小智..:

在Centos 6.5/PostgreSQL 9.3上:

将值更改为"PGDATA=/var/lib/pgsql/data"初始脚本文件中所需的任何位置/etc/init.d/postgresql.

请记住, chmod 700chown postgres:postgres在新的位置,你是老板.

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有