
base目录,这是所有数据库目录的父目录。
在base目录下第一层,每个目录就是一个数据库所对应的文件。
那么如何知道哪个目录对应哪个数据呢?
查询如下:先看数据库列表
[pgsql@localhost bin]$ ./psql
psql (9.1.2)
Type "help" for help. pgsql=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+--------+----------+-------------+-------------+-------------------
pgsql | pgsql | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | pgsql | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | pgsql | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/pgsql +
| | | | | pgsql=CTc/pgsql
template1 | pgsql | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/pgsql +
| | | | | pgsql=CTc/pgsql
tester | tester | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
(5 rows) pgsql=# \q
再看数据库目录路径:
tester=# select oid,datname from pg_database;
oid | datname
-------+-----------
1 | template1
12691 | template0
12699 | postgres
16384 | pgsql
16386 | tester
(5 rows) tester=#
可以看看目录结构对比一下:
[pgsql@localhost base]$ pwd
/home/pgsql/DemoDir/base
[pgsql@localhost base]$ ls [pgsql@localhost base]$