Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 729d2b0

Browse files
committed
Properly indent tablespace SGML section.
1 parent 38fe3a9 commit 729d2b0

File tree

1 file changed

+122
-122
lines changed

1 file changed

+122
-122
lines changed

doc/src/sgml/manage-ag.sgml

+122-122
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!-- $PostgreSQL: pgsql/doc/src/sgml/manage-ag.sgml,v 2.54 2007/06/03 17:05:52 tgl Exp $ -->
1+
<!-- $PostgreSQL: pgsql/doc/src/sgml/manage-ag.sgml,v 2.55 2007/11/04 19:43:33 momjian Exp $ -->
22

33
<chapter id="managing-databases">
44
<title>Managing Databases</title>
@@ -344,156 +344,156 @@ dropdb <replaceable class="parameter">dbname</replaceable>
344344
<primary>tablespace</primary>
345345
</indexterm>
346346

347-
<para>
348-
Tablespaces in <productname>PostgreSQL</> allow database administrators to
349-
define locations in the file system where the files representing
350-
database objects can be stored. Once created, a tablespace can be referred
351-
to by name when creating database objects.
352-
</para>
347+
<para>
348+
Tablespaces in <productname>PostgreSQL</> allow database administrators to
349+
define locations in the file system where the files representing
350+
database objects can be stored. Once created, a tablespace can be referred
351+
to by name when creating database objects.
352+
</para>
353353

354-
<para>
355-
By using tablespaces, an administrator can control the disk layout
356-
of a <productname>PostgreSQL</> installation. This is useful in at
357-
least two ways. First, if the partition or volume on which the
358-
cluster was initialized runs out of space and cannot be extended,
359-
a tablespace can be created on a different partition and used
360-
until the system can be reconfigured.
361-
</para>
354+
<para>
355+
By using tablespaces, an administrator can control the disk layout
356+
of a <productname>PostgreSQL</> installation. This is useful in at
357+
least two ways. First, if the partition or volume on which the
358+
cluster was initialized runs out of space and cannot be extended,
359+
a tablespace can be created on a different partition and used
360+
until the system can be reconfigured.
361+
</para>
362362

363-
<para>
364-
Second, tablespaces allow an administrator to use knowledge of the
365-
usage pattern of database objects to optimize performance. For
366-
example, an index which is very heavily used can be placed on a
367-
very fast, highly available disk, such as an expensive solid state
368-
device. At the same time a table storing archived data which is
369-
rarely used or not performance critical could be stored on a less
370-
expensive, slower disk system.
371-
</para>
363+
<para>
364+
Second, tablespaces allow an administrator to use knowledge of the
365+
usage pattern of database objects to optimize performance. For
366+
example, an index which is very heavily used can be placed on a
367+
very fast, highly available disk, such as an expensive solid state
368+
device. At the same time a table storing archived data which is
369+
rarely used or not performance critical could be stored on a less
370+
expensive, slower disk system.
371+
</para>
372372

373-
<para>
374-
To define a tablespace, use the <xref
375-
linkend="sql-createtablespace" endterm="sql-createtablespace-title">
376-
command, for example:<indexterm><primary>CREATE TABLESPACE</></>:
373+
<para>
374+
To define a tablespace, use the <xref
375+
linkend="sql-createtablespace" endterm="sql-createtablespace-title">
376+
command, for example:<indexterm><primary>CREATE TABLESPACE</></>:
377377
<programlisting>
378378
CREATE TABLESPACE fastspace LOCATION '/mnt/sda1/postgresql/data';
379379
</programlisting>
380-
The location must be an existing, empty directory that is owned by
381-
the <productname>PostgreSQL</> system user. All objects subsequently
382-
created within the tablespace will be stored in files underneath this
383-
directory.
384-
</para>
385-
386-
<note>
387-
<para>
388-
There is usually not much point in making more than one
389-
tablespace per logical file system, since you cannot control the location
390-
of individual files within a logical file system. However,
391-
<productname>PostgreSQL</> does not enforce any such limitation, and
392-
indeed it is not directly aware of the file system boundaries on your
393-
system. It just stores files in the directories you tell it to use.
394-
</para>
395-
</note>
380+
The location must be an existing, empty directory that is owned by
381+
the <productname>PostgreSQL</> system user. All objects subsequently
382+
created within the tablespace will be stored in files underneath this
383+
directory.
384+
</para>
396385

386+
<note>
397387
<para>
398-
Creation of the tablespace itself must be done as a database superuser,
399-
but after that you can allow ordinary database users to make use of it.
400-
To do that, grant them the <literal>CREATE</> privilege on it.
388+
There is usually not much point in making more than one
389+
tablespace per logical file system, since you cannot control the location
390+
of individual files within a logical file system. However,
391+
<productname>PostgreSQL</> does not enforce any such limitation, and
392+
indeed it is not directly aware of the file system boundaries on your
393+
system. It just stores files in the directories you tell it to use.
401394
</para>
395+
</note>
402396

403-
<para>
404-
Tables, indexes, and entire databases can be assigned to
405-
particular tablespaces. To do so, a user with the <literal>CREATE</>
406-
privilege on a given tablespace must pass the tablespace name as a
407-
parameter to the relevant command. For example, the following creates
408-
a table in the tablespace <literal>space1</>:
397+
<para>
398+
Creation of the tablespace itself must be done as a database superuser,
399+
but after that you can allow ordinary database users to make use of it.
400+
To do that, grant them the <literal>CREATE</> privilege on it.
401+
</para>
402+
403+
<para>
404+
Tables, indexes, and entire databases can be assigned to
405+
particular tablespaces. To do so, a user with the <literal>CREATE</>
406+
privilege on a given tablespace must pass the tablespace name as a
407+
parameter to the relevant command. For example, the following creates
408+
a table in the tablespace <literal>space1</>:
409409
<programlisting>
410410
CREATE TABLE foo(i int) TABLESPACE space1;
411411
</programlisting>
412-
</para>
412+
</para>
413413

414-
<para>
415-
Alternatively, use the <xref linkend="guc-default-tablespace"> parameter:
414+
<para>
415+
Alternatively, use the <xref linkend="guc-default-tablespace"> parameter:
416416
<programlisting>
417417
SET default_tablespace = space1;
418418
CREATE TABLE foo(i int);
419419
</programlisting>
420-
When <varname>default_tablespace</> is set to anything but an empty
421-
string, it supplies an implicit <literal>TABLESPACE</> clause for
422-
<command>CREATE TABLE</> and <command>CREATE INDEX</> commands that
423-
do not have an explicit one.
424-
</para>
420+
When <varname>default_tablespace</> is set to anything but an empty
421+
string, it supplies an implicit <literal>TABLESPACE</> clause for
422+
<command>CREATE TABLE</> and <command>CREATE INDEX</> commands that
423+
do not have an explicit one.
424+
</para>
425425

426-
<para>
427-
There is also a <xref linkend="guc-temp-tablespaces"> parameter, which
428-
determines the placement of temporary tables and indexes, as well as
429-
temporary files that are used for purposes such as sorting large data
430-
sets. This can be a list of tablespace names, rather than only one,
431-
so that the load associated with temporary objects can be spread over
432-
multiple tablespaces. A random member of the list is picked each time
433-
a temporary object is to be created.
434-
</para>
426+
<para>
427+
There is also a <xref linkend="guc-temp-tablespaces"> parameter, which
428+
determines the placement of temporary tables and indexes, as well as
429+
temporary files that are used for purposes such as sorting large data
430+
sets. This can be a list of tablespace names, rather than only one,
431+
so that the load associated with temporary objects can be spread over
432+
multiple tablespaces. A random member of the list is picked each time
433+
a temporary object is to be created.
434+
</para>
435435

436-
<para>
437-
The tablespace associated with a database is used to store the system
438-
catalogs of that database. Furthermore, it is the default tablespace
439-
used for tables, indexes, and temporary files created within the database,
440-
if no <literal>TABLESPACE</> clause is given and no other selection is
441-
specified by <varname>default_tablespace</> or
442-
<varname>temp_tablespaces</> (as appropriate).
443-
If a database is created without specifying a tablespace for it,
444-
it uses the same tablespace as the template database it is copied from.
445-
</para>
436+
<para>
437+
The tablespace associated with a database is used to store the system
438+
catalogs of that database. Furthermore, it is the default tablespace
439+
used for tables, indexes, and temporary files created within the database,
440+
if no <literal>TABLESPACE</> clause is given and no other selection is
441+
specified by <varname>default_tablespace</> or
442+
<varname>temp_tablespaces</> (as appropriate).
443+
If a database is created without specifying a tablespace for it,
444+
it uses the same tablespace as the template database it is copied from.
445+
</para>
446446

447-
<para>
448-
Two tablespaces are automatically created by <literal>initdb</>. The
449-
<literal>pg_global</> tablespace is used for shared system catalogs. The
450-
<literal>pg_default</> tablespace is the default tablespace of the
451-
<literal>template1</> and <literal>template0</> databases (and, therefore,
452-
will be the default tablespace for other databases as well, unless
453-
overridden by a <literal>TABLESPACE</> clause in <command>CREATE
454-
DATABASE</>).
455-
</para>
447+
<para>
448+
Two tablespaces are automatically created by <literal>initdb</>. The
449+
<literal>pg_global</> tablespace is used for shared system catalogs. The
450+
<literal>pg_default</> tablespace is the default tablespace of the
451+
<literal>template1</> and <literal>template0</> databases (and, therefore,
452+
will be the default tablespace for other databases as well, unless
453+
overridden by a <literal>TABLESPACE</> clause in <command>CREATE
454+
DATABASE</>).
455+
</para>
456456

457-
<para>
458-
Once created, a tablespace can be used from any database, provided
459-
the requesting user has sufficient privilege. This means that a tablespace
460-
cannot be dropped until all objects in all databases using the tablespace
461-
have been removed.
462-
</para>
457+
<para>
458+
Once created, a tablespace can be used from any database, provided
459+
the requesting user has sufficient privilege. This means that a tablespace
460+
cannot be dropped until all objects in all databases using the tablespace
461+
have been removed.
462+
</para>
463463

464-
<para>
465-
To remove an empty tablespace, use the <xref
466-
linkend="sql-droptablespace" endterm="sql-droptablespace-title">
467-
command.
468-
</para>
464+
<para>
465+
To remove an empty tablespace, use the <xref
466+
linkend="sql-droptablespace" endterm="sql-droptablespace-title">
467+
command.
468+
</para>
469469

470-
<para>
471-
To determine the set of existing tablespaces, examine the
472-
<structname>pg_tablespace</> system catalog, for example
470+
<para>
471+
To determine the set of existing tablespaces, examine the
472+
<structname>pg_tablespace</> system catalog, for example
473473
<synopsis>
474474
SELECT spcname FROM pg_tablespace;
475475
</synopsis>
476-
The <xref linkend="app-psql"> program's <literal>\db</> meta-command
477-
is also useful for listing the existing tablespaces.
478-
</para>
476+
The <xref linkend="app-psql"> program's <literal>\db</> meta-command
477+
is also useful for listing the existing tablespaces.
478+
</para>
479479

480-
<para>
481-
<productname>PostgreSQL</> makes use of symbolic links
482-
to simplify the implementation of tablespaces. This
483-
means that tablespaces can be used <emphasis>only</> on systems
484-
that support symbolic links.
485-
</para>
480+
<para>
481+
<productname>PostgreSQL</> makes use of symbolic links
482+
to simplify the implementation of tablespaces. This
483+
means that tablespaces can be used <emphasis>only</> on systems
484+
that support symbolic links.
485+
</para>
486486

487-
<para>
488-
The directory <filename>$PGDATA/pg_tblspc</> contains symbolic links that
489-
point to each of the non-built-in tablespaces defined in the cluster.
490-
Although not recommended, it is possible to adjust the tablespace
491-
layout by hand by redefining these links. Two warnings: do not do so
492-
while the server is running; and after you restart the server,
493-
update the <structname>pg_tablespace</> catalog to show the new
494-
locations. (If you do not, <literal>pg_dump</> will continue to show
495-
the old tablespace locations.)
496-
</para>
487+
<para>
488+
The directory <filename>$PGDATA/pg_tblspc</> contains symbolic links that
489+
point to each of the non-built-in tablespaces defined in the cluster.
490+
Although not recommended, it is possible to adjust the tablespace
491+
layout by hand by redefining these links. Two warnings: do not do so
492+
while the server is running; and after you restart the server,
493+
update the <structname>pg_tablespace</> catalog to show the new
494+
locations. (If you do not, <literal>pg_dump</> will continue to show
495+
the old tablespace locations.)
496+
</para>
497497

498498
</sect1>
499499
</chapter>

0 commit comments

Comments
 (0)