Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitf470b5c

Browse files
committed
docs: Demote "Monitoring Disk Usage" from chapter to section.
This chapter is very short, and the immediately preceding chapter iscalled "Monitoring Database Activity". So, instead of having aseparate chapter for this, make it the last section of the precedingchapter instead.Discussion:http://postgr.es/m/CA+Tgmob7_uoYuS2=rVwpVXaRwP-UXz+++saYTC-BCZ42QzSNKQ@mail.gmail.com
1 parentc9920a9 commitf470b5c

File tree

4 files changed

+143
-146
lines changed

4 files changed

+143
-146
lines changed

‎doc/src/sgml/diskusage.sgml

Lines changed: 0 additions & 144 deletions
This file was deleted.

‎doc/src/sgml/filelist.sgml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
<!ENTITY backup SYSTEM "backup.sgml">
3535
<!ENTITY charset SYSTEM "charset.sgml">
3636
<!ENTITY client-auth SYSTEM "client-auth.sgml">
37-
<!ENTITY diskusage SYSTEM "diskusage.sgml">
3837
<!ENTITY high-availability SYSTEM "high-availability.sgml">
3938
<!ENTITY installbin SYSTEM "install-binaries.sgml">
4039
<!ENTITY installation SYSTEM "installation.sgml">

‎doc/src/sgml/monitoring.sgml

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7282,4 +7282,147 @@ if (TRACE_POSTGRESQL_TRANSACTION_START_ENABLED())
72827282

72837283
</sect1>
72847284

7285+
<sect1 id="diskusage">
7286+
<title>Monitoring Disk Usage</title>
7287+
7288+
<para>
7289+
This section discusses how to monitor the disk usage of a
7290+
<productname>PostgreSQL</productname> database system.
7291+
</para>
7292+
7293+
<sect2 id="disk-usage">
7294+
<title>Determining Disk Usage</title>
7295+
7296+
<indexterm zone="disk-usage">
7297+
<primary>disk usage</primary>
7298+
</indexterm>
7299+
7300+
<para>
7301+
Each table has a primary heap disk file where most of the data is
7302+
stored. If the table has any columns with potentially-wide values,
7303+
there also might be a <acronym>TOAST</acronym> file associated with the table,
7304+
which is used to store values too wide to fit comfortably in the main
7305+
table (see <xref linkend="storage-toast"/>). There will be one valid index
7306+
on the <acronym>TOAST</acronym> table, if present. There also might be indexes
7307+
associated with the base table. Each table and index is stored in a
7308+
separate disk file &mdash; possibly more than one file, if the file would
7309+
exceed one gigabyte. Naming conventions for these files are described
7310+
in <xref linkend="storage-file-layout"/>.
7311+
</para>
7312+
7313+
<para>
7314+
You can monitor disk space in three ways:
7315+
using the SQL functions listed in <xref linkend="functions-admin-dbsize"/>,
7316+
using the <xref linkend="oid2name"/> module, or
7317+
using manual inspection of the system catalogs.
7318+
The SQL functions are the easiest to use and are generally recommended.
7319+
The remainder of this section shows how to do it by inspection of the
7320+
system catalogs.
7321+
</para>
7322+
7323+
<para>
7324+
Using <application>psql</application> on a recently vacuumed or analyzed
7325+
database, you can issue queries to see the disk usage of any table:
7326+
<programlisting>
7327+
SELECT pg_relation_filepath(oid), relpages FROM pg_class WHERE relname = 'customer';
7328+
7329+
pg_relation_filepath | relpages
7330+
----------------------+----------
7331+
base/16384/16806 | 60
7332+
(1 row)
7333+
</programlisting>
7334+
Each page is typically 8 kilobytes. (Remember, <structfield>relpages</structfield>
7335+
is only updated by <command>VACUUM</command>, <command>ANALYZE</command>, and
7336+
a few DDL commands such as <command>CREATE INDEX</command>.) The file path name
7337+
is of interest if you want to examine the table's disk file directly.
7338+
</para>
7339+
7340+
<para>
7341+
To show the space used by <acronym>TOAST</acronym> tables, use a query
7342+
like the following:
7343+
<programlisting>
7344+
SELECT relname, relpages
7345+
FROM pg_class,
7346+
(SELECT reltoastrelid
7347+
FROM pg_class
7348+
WHERE relname = 'customer') AS ss
7349+
WHERE oid = ss.reltoastrelid OR
7350+
oid = (SELECT indexrelid
7351+
FROM pg_index
7352+
WHERE indrelid = ss.reltoastrelid)
7353+
ORDER BY relname;
7354+
7355+
relname | relpages
7356+
----------------------+----------
7357+
pg_toast_16806 | 0
7358+
pg_toast_16806_index | 1
7359+
</programlisting>
7360+
</para>
7361+
7362+
<para>
7363+
You can easily display index sizes, too:
7364+
<programlisting>
7365+
SELECT c2.relname, c2.relpages
7366+
FROM pg_class c, pg_class c2, pg_index i
7367+
WHERE c.relname = 'customer' AND
7368+
c.oid = i.indrelid AND
7369+
c2.oid = i.indexrelid
7370+
ORDER BY c2.relname;
7371+
7372+
relname | relpages
7373+
-------------------+----------
7374+
customer_id_index | 26
7375+
</programlisting>
7376+
</para>
7377+
7378+
<para>
7379+
It is easy to find your largest tables and indexes using this
7380+
information:
7381+
<programlisting>
7382+
SELECT relname, relpages
7383+
FROM pg_class
7384+
ORDER BY relpages DESC;
7385+
7386+
relname | relpages
7387+
----------------------+----------
7388+
bigtable | 3290
7389+
customer | 3144
7390+
</programlisting>
7391+
</para>
7392+
</sect2>
7393+
7394+
<sect2 id="disk-full">
7395+
<title>Disk Full Failure</title>
7396+
7397+
<para>
7398+
The most important disk monitoring task of a database administrator
7399+
is to make sure the disk doesn't become full. A filled data disk will
7400+
not result in data corruption, but it might prevent useful activity
7401+
from occurring. If the disk holding the WAL files grows full, database
7402+
server panic and consequent shutdown might occur.
7403+
</para>
7404+
7405+
<para>
7406+
If you cannot free up additional space on the disk by deleting
7407+
other things, you can move some of the database files to other file
7408+
systems by making use of tablespaces. See <xref
7409+
linkend="manage-ag-tablespaces"/> for more information about that.
7410+
</para>
7411+
7412+
<tip>
7413+
<para>
7414+
Some file systems perform badly when they are almost full, so do
7415+
not wait until the disk is completely full to take action.
7416+
</para>
7417+
</tip>
7418+
7419+
<para>
7420+
If your system supports per-user disk quotas, then the database
7421+
will naturally be subject to whatever quota is placed on the user
7422+
the server runs as. Exceeding the quota will have the same bad
7423+
effects as running out of disk space entirely.
7424+
</para>
7425+
</sect2>
7426+
</sect1>
7427+
72857428
</chapter>

‎doc/src/sgml/postgres.sgml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,6 @@ break is not needed in a wider output rendering.
162162
&backup;
163163
&high-availability;
164164
&monitoring;
165-
&diskusage;
166165
&wal;
167166
&logical-replication;
168167
&jit;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp