mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-03-01 19:45:33 +08:00
Update storage.sgml to describe the 9.0 tablespace directory layout.
This commit is contained in:
parent
1c72614be7
commit
c33bfb8b9b
@ -174,8 +174,6 @@ adjusted using the configuration option <option>--with-segsize</option>
|
||||
when building <productname>PostgreSQL</>.)
|
||||
In principle, free space map and visibility map forks could require multiple
|
||||
segments as well, though this is unlikely to happen in practice.
|
||||
The contents of tables and indexes are discussed further in
|
||||
<xref linkend="storage-page-layout">.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -187,15 +185,27 @@ its <acronym>TOAST</> table, if any.
|
||||
See <xref linkend="storage-toast"> for more information.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The contents of tables and indexes are discussed further in
|
||||
<xref linkend="storage-page-layout">.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Tablespaces make the scenario more complicated. Each user-defined tablespace
|
||||
has a symbolic link inside the <varname>PGDATA</><filename>/pg_tblspc</>
|
||||
directory, which points to the physical tablespace directory (as specified in
|
||||
its <command>CREATE TABLESPACE</> command). The symbolic link is named after
|
||||
directory, which points to the physical tablespace directory (i.e., the
|
||||
location specified in the tablespace's <command>CREATE TABLESPACE</> command).
|
||||
This symbolic link is named after
|
||||
the tablespace's OID. Inside the physical tablespace directory there is
|
||||
a subdirectory with a name that depends on the <productname>PostgreSQL</>
|
||||
server version, such as <literal>PG_9.0_201008051</>. (The reason for using
|
||||
this subdirectory is so that successive versions of the database can use
|
||||
the same <command>CREATE TABLESPACE</> location value without conflicts.)
|
||||
Within the version-specific subdirectory, there is
|
||||
a subdirectory for each database that has elements in the tablespace, named
|
||||
after the database's OID. Tables within that directory follow the filenode
|
||||
naming scheme. The <literal>pg_default</> tablespace is not accessed through
|
||||
after the database's OID. Tables and indexes are stored within that
|
||||
directory, using the filenode naming scheme.
|
||||
The <literal>pg_default</> tablespace is not accessed through
|
||||
<filename>pg_tblspc</>, but corresponds to
|
||||
<varname>PGDATA</><filename>/base</>. Similarly, the <literal>pg_global</>
|
||||
tablespace is not accessed through <filename>pg_tblspc</>, but corresponds to
|
||||
|
Loading…
Reference in New Issue
Block a user