57.31. pg_stats_vacuum_database #
Представление pg_stats_vacuum_database будет содержать одну строку для каждой базы данных в этом кластере, показывая статистику очистки этой базы данных.
Таблица 57.31. Столбцы pg_stats_vacuum_database
Тип столбца Описание |
|---|
OID базы данных |
Количество блоков базы данных, прочитанных операциями очистки для этой БД |
Количество попаданий в буферный кеш блоков базы данных в процессе операций очистки, выполненных для этой БД |
Количество блоков базы данных, загрязнённых операциями очистки для этой БД |
Количество блоков базы данных, записанных операциями очистки для этой БД |
Общее число записей WAL, сгенерированных операциями очистки для этой базы данных |
Общее число образов полных страниц в WAL, сгенерированных операциями очистки для этой базы данных |
Общий объём WAL (в байтах), сгенерированный операциями очистки для этой базы данных |
Общее время, затраченное на чтение блоков базы данных операциями очистки, выполненными для этой БД, в миллисекундах (если включён параметр track_io_timing, или ноль в противном случае) |
Общее время, затраченное на запись блоков базы данных операциями очистки, выполненными для этой БД, в миллисекундах (если включён параметр track_io_timing, или ноль в противном случае) |
Время простоя в точке задержки при выполнении операций очистки для этой базы данных, в миллисекундах (за подробностями обратитесь к Подразделу 19.4.4). |
Время использования процессора в режиме ядра при очистке этой базы данных, в миллисекундах |
Время использования процессора в пользовательском режиме при очистке этой базы данных, в миллисекундах |
Общее время, затраченное на очистку этой базы данных, в миллисекундах |
Сколько раз операции очистки для этой базы данных были прерваны из-за каких-либо ошибок |
Примечание
При обновлении сервера путём замены исполняемых файлов обновите представление pg_stats_vacuum_database от имени суперпользователя, запускавшего initdb:
Для каждой базы данных, включая
template1, но исключаяtemplate0, выполните:CREATE OR REPLACE VIEW pg_stats_vacuum_database AS SELECT db.oid as dboid, stats.db_blks_read, stats.db_blks_hit, stats.total_blks_dirtied, stats.total_blks_written, stats.wal_records, stats.wal_fpi, stats.wal_bytes, stats.blk_read_time, stats.blk_write_time, stats.delay_time, stats.system_time, stats.user_time, stats.total_time, stats.interrupts FROM pg_database db LEFT JOIN pg_stats_vacuum_database(db.oid) stats ON db.oid = stats.dboid;
Для базы данных
template0выполните:\c template1 ALTER DATABASE template0 ALLOW_CONNECTIONS on; \c template0 CREATE OR REPLACE VIEW pg_stats_vacuum_database AS SELECT db.oid as dboid, stats.db_blks_read, stats.db_blks_hit, stats.total_blks_dirtied, stats.total_blks_written, stats.wal_records, stats.wal_fpi, stats.wal_bytes, stats.blk_read_time, stats.blk_write_time, stats.delay_time, stats.system_time, stats.user_time, stats.total_time, stats.interrupts FROM pg_database db LEFT JOIN pg_stats_vacuum_database(db.oid) stats ON db.oid = stats.dboid; \c template1 ALTER DATABASE template0 ALLOW_CONNECTIONS off;
57.31. pg_stats_vacuum_database #
The view pg_stats_vacuum_database will contain one row for each database in the current cluster, showing statistics about vacuuming that database.
Table 57.31. pg_stats_vacuum_database Columns
Column Type Description |
|---|
OID of a database |
Number of database blocks read by vacuum operations performed on this database |
Number of times database blocks were found in the buffer cache by vacuum operations performed on this database |
Number of database blocks dirtied by vacuum operations performed on this database |
Number of database blocks written by vacuum operations performed on this database |
Total number of WAL records generated by vacuum operations performed on this database |
Total number of WAL full page images generated by vacuum operations performed on this database |
Total amount of WAL bytes generated by vacuum operations performed on this database |
Time spent reading database blocks by vacuum operations performed on this database, in milliseconds (if track_io_timing is enabled, otherwise zero) |
Time spent writing database blocks by vacuum operations performed on this database, in milliseconds (if track_io_timing is enabled, otherwise zero) |
Time spent sleeping in a vacuum delay point by vacuum operations performed on this database, in milliseconds (see Section 19.4.4 for details) |
System CPU time of vacuuming this database, in milliseconds |
User CPU time of vacuuming this database, in milliseconds |
Total time of vacuuming this database, in milliseconds |
Number of times vacuum operations performed on this database were interrupted on any errors |
Note
On upgrading your server just by replacing the executables, update the pg_stats_vacuum_database view as superuser who ran initdb:
For each database, including
template1, but not includingtemplate0, run:CREATE OR REPLACE VIEW pg_stats_vacuum_database AS SELECT db.oid as dboid, stats.db_blks_read, stats.db_blks_hit, stats.total_blks_dirtied, stats.total_blks_written, stats.wal_records, stats.wal_fpi, stats.wal_bytes, stats.blk_read_time, stats.blk_write_time, stats.delay_time, stats.system_time, stats.user_time, stats.total_time, stats.interrupts FROM pg_database db LEFT JOIN pg_stats_vacuum_database(db.oid) stats ON db.oid = stats.dboid;
For the
template0database, run:\c template1 ALTER DATABASE template0 ALLOW_CONNECTIONS on; \c template0 CREATE OR REPLACE VIEW pg_stats_vacuum_database AS SELECT db.oid as dboid, stats.db_blks_read, stats.db_blks_hit, stats.total_blks_dirtied, stats.total_blks_written, stats.wal_records, stats.wal_fpi, stats.wal_bytes, stats.blk_read_time, stats.blk_write_time, stats.delay_time, stats.system_time, stats.user_time, stats.total_time, stats.interrupts FROM pg_database db LEFT JOIN pg_stats_vacuum_database(db.oid) stats ON db.oid = stats.dboid; \c template1 ALTER DATABASE template0 ALLOW_CONNECTIONS off;