PostgreSQL数据库的文件存储在哪里?


当前回答

打开pgAdmin,进入特定数据库的属性。找到OID,然后打开目录

<POSTGRESQL_DIRECTORY>/data/base/<OID>

这里应该有您的DB文件。

其他回答

打开pgAdmin,进入特定数据库的属性。找到OID,然后打开目录

<POSTGRESQL_DIRECTORY>/data/base/<OID>

这里应该有您的DB文件。

在Windows7上,所有数据库都由C:\Program Files (x86)\PostgreSQL\8.2\data\global.下名为pg_database的文件中的一个数字引用然后,您应该在C:\Program Files (x86)\PostgreSQL\8.2\data\base.下根据该数字搜索文件夹名称这就是数据库的内容。

Picmate的答案是正确的。在windows上,主DB文件夹的位置是(至少在我的安装)

C:\PostgreSQL\9.2\data\base\

而且不是在程序文件中。

他的2个脚本,将给你确切的目录/文件(s)你需要:

SELECT oid from pg_database WHERE datname = <database_name>;
SELECT relname, relfilenode FROM pg_class WHERE relname = <table_name>; 

我的在datname 16393和relfilenode 41603中

在“PostgreSQL数据库在Linux上的默认位置”中建议,在Linux下你可以使用以下命令找到:

ps aux | grep postgres | grep -- -D

要查看数据目录的位置,请使用此查询。

show data_directory;

要查看所有运行时参数,请使用

show all;

您可以创建表空间来在文件系统的其他部分存储数据库对象。要查看可能不在该数据目录中的表空间,请使用此查询。

SELECT *, pg_tablespace_location(oid) FROM pg_tablespace;