Commit 05f43650 authored by Alvaro Herrera's avatar Alvaro Herrera

Document that autovacuum may run ANALYZE

parent 7798147a
<!-- $PostgreSQL: pgsql/doc/src/sgml/backup.sgml,v 2.129 2009/06/26 22:06:11 tgl Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/backup.sgml,v 2.130 2009/08/07 20:54:31 alvherre Exp $ -->
<chapter id="backup"> <chapter id="backup">
<title>Backup and Restore</title> <title>Backup and Restore</title>
...@@ -168,10 +168,10 @@ pg_dump -h <replaceable>host1</> <replaceable>dbname</> | psql -h <replaceable>h ...@@ -168,10 +168,10 @@ pg_dump -h <replaceable>host1</> <replaceable>dbname</> | psql -h <replaceable>h
<para> <para>
After restoring a backup, it is wise to run <xref After restoring a backup, it is wise to run <xref
linkend="sql-analyze" endterm="sql-analyze-title"> on each linkend="sql-analyze" endterm="sql-analyze-title"> on each
database so the query optimizer has useful statistics. An easy way database so the query optimizer has useful statistics;
to do this is to run <command>vacuumdb -a -z</>; this is see <xref linkend="vacuum-for-statistics" endterm="vacuum-for-statistics-title">
equivalent to running <command>VACUUM ANALYZE</> on each database and <xref linkend="autovacuum" endterm="autovacuum-title"> for more information.
manually. For more advice on how to load large amounts of data For more advice on how to load large amounts of data
into <productname>PostgreSQL</> efficiently, refer to <xref into <productname>PostgreSQL</> efficiently, refer to <xref
linkend="populate">. linkend="populate">.
</para> </para>
......
<!-- $PostgreSQL: pgsql/doc/src/sgml/indices.sgml,v 1.78 2009/06/17 21:58:49 tgl Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/indices.sgml,v 1.79 2009/08/07 20:54:31 alvherre Exp $ -->
<chapter id="indexes"> <chapter id="indexes">
<title id="indexes-title">Indexes</title> <title id="indexes-title">Indexes</title>
...@@ -1026,6 +1026,8 @@ SELECT am.amname AS index_method, ...@@ -1026,6 +1026,8 @@ SELECT am.amname AS index_method,
almost certain to be inaccurate. Examining an application's almost certain to be inaccurate. Examining an application's
index usage without having run <command>ANALYZE</command> is index usage without having run <command>ANALYZE</command> is
therefore a lost cause. therefore a lost cause.
See <xref linkend="vacuum-for-statistics" endterm="vacuum-for-statistics-title">
and <xref linkend="autovacuum" endterm="autovacuum-title"> for more information.
</para> </para>
</listitem> </listitem>
......
<!-- $PostgreSQL: pgsql/doc/src/sgml/maintenance.sgml,v 1.95 2009/06/17 13:59:28 petere Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/maintenance.sgml,v 1.96 2009/08/07 20:54:31 alvherre Exp $ -->
<chapter id="maintenance"> <chapter id="maintenance">
<title>Routine Database Maintenance Tasks</title> <title>Routine Database Maintenance Tasks</title>
...@@ -253,7 +253,7 @@ ...@@ -253,7 +253,7 @@
</sect2> </sect2>
<sect2 id="vacuum-for-statistics"> <sect2 id="vacuum-for-statistics">
<title>Updating Planner Statistics</title> <title id="vacuum-for-statistics-title">Updating Planner Statistics</title>
<indexterm zone="vacuum-for-statistics"> <indexterm zone="vacuum-for-statistics">
<primary>statistics</primary> <primary>statistics</primary>
......
<!-- $PostgreSQL: pgsql/doc/src/sgml/perform.sgml,v 1.71 2009/06/17 21:58:49 tgl Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/perform.sgml,v 1.72 2009/08/07 20:54:31 alvherre Exp $ -->
<chapter id="performance-tips"> <chapter id="performance-tips">
<title>Performance Tips</title> <title>Performance Tips</title>
...@@ -974,7 +974,10 @@ SELECT * FROM x, y, a, b, c WHERE something AND somethingelse; ...@@ -974,7 +974,10 @@ SELECT * FROM x, y, a, b, c WHERE something AND somethingelse;
table. With no statistics or obsolete statistics, the planner might table. With no statistics or obsolete statistics, the planner might
make poor decisions during query planning, leading to poor make poor decisions during query planning, leading to poor
performance on any tables with inaccurate or nonexistent performance on any tables with inaccurate or nonexistent
statistics. statistics. Note that if the autovacuum daemon is enabled, it might
run <command>ANALYZE</command> automatically; see
<xref linkend="vacuum-for-statistics" endterm="vacuum-for-statistics-title">
and <xref linkend="autovacuum" endterm="autovacuum-title"> for more information.
</para> </para>
</sect2> </sect2>
...@@ -1054,7 +1057,9 @@ SELECT * FROM x, y, a, b, c WHERE something AND somethingelse; ...@@ -1054,7 +1057,9 @@ SELECT * FROM x, y, a, b, c WHERE something AND somethingelse;
while loading the data, but don't bother increasing while loading the data, but don't bother increasing
<varname>maintenance_work_mem</varname>; rather, you'd do that while <varname>maintenance_work_mem</varname>; rather, you'd do that while
manually recreating indexes and foreign keys afterwards. manually recreating indexes and foreign keys afterwards.
And don't forget to <command>ANALYZE</> when you're done. And don't forget to <command>ANALYZE</> when you're done; see
<xref linkend="vacuum-for-statistics" endterm="vacuum-for-statistics-title">
and <xref linkend="autovacuum" endterm="autovacuum-title"> for more information.
</para> </para>
</sect2> </sect2>
</sect1> </sect1>
......
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/pg_dump.sgml,v 1.113 2009/03/22 16:44:26 tgl Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/pg_dump.sgml,v 1.114 2009/08/07 20:54:31 alvherre Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -834,7 +834,9 @@ CREATE DATABASE foo WITH TEMPLATE template0; ...@@ -834,7 +834,9 @@ CREATE DATABASE foo WITH TEMPLATE template0;
does not contain the statistics used by the optimizer to make does not contain the statistics used by the optimizer to make
query planning decisions. Therefore, it is wise to run query planning decisions. Therefore, it is wise to run
<command>ANALYZE</command> after restoring from a dump file <command>ANALYZE</command> after restoring from a dump file
to ensure good performance. The dump file also does not to ensure good performance; see <xref linkend="vacuum-for-statistics">
and <xref linkend="autovacuum"> for more information.
The dump file also does not
contain any <command>ALTER DATABASE ... SET</> commands; contain any <command>ALTER DATABASE ... SET</> commands;
these settings are dumped by <xref linkend="app-pg-dumpall">, these settings are dumped by <xref linkend="app-pg-dumpall">,
along with database users and other installation-wide settings. along with database users and other installation-wide settings.
......
<!-- $PostgreSQL: pgsql/doc/src/sgml/ref/pg_restore.sgml,v 1.81 2009/03/20 09:21:08 petere Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/ref/pg_restore.sgml,v 1.82 2009/08/07 20:54:31 alvherre Exp $ -->
<refentry id="APP-PGRESTORE"> <refentry id="APP-PGRESTORE">
<refmeta> <refmeta>
...@@ -679,7 +679,9 @@ CREATE DATABASE foo WITH TEMPLATE template0; ...@@ -679,7 +679,9 @@ CREATE DATABASE foo WITH TEMPLATE template0;
<para> <para>
Once restored, it is wise to run <command>ANALYZE</> on each Once restored, it is wise to run <command>ANALYZE</> on each
restored table so the optimizer has useful statistics. restored table so the optimizer has useful statistics; see
<xref linkend="vacuum-for-statistics"> and
<xref linkend="autovacuum"> for more information.
</para> </para>
</refsect1> </refsect1>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment