pg_xlogdump

pg_xlogdump — вывести журнал предзаписи кластера БД Postgres Pro в понятном человеку виде

Синтаксис

pg_xlogdump [параметр...] [timestamp-option...] [начальный_сегмент [конечный_сегмент] ]

Описание

Программа pg_xlogdump показывает содержимое журнала предзаписи (WAL) с метками времени. Прежде всего она полезна для отладки и исследовательских целей.

Эту утилиту может запускать только пользователь, установивший сервер, так как ей требуется доступ на чтение к каталогу данных.

Параметры

Следующие аргументы командной строки задают расположение данных и формат вывода:

начальный_сегмент

Начать чтение с указанного файла сегмента журнала. Это неявно определяет каталог, в котором будут находиться файлы, и целевую линию времени.

конечный_сегмент

Остановиться после чтения указанного файла сегмента журнала.

-b
--bkp-details

Выводить подробные сведения о блоках-копиях страниц.

-e конец
--end=конец

Прекратить чтение в заданной позиции в журнале, а не читать поток до конца.

-f
--follow

Достигнув конца корректного WAL, проверять раз в секунду поступление новых записей WAL.

-n предел
--limit=предел

Вывести заданное число записей и остановиться.

-p путь
--path=путь

Задаёт каталог, содержащий файлы сегментов журнала, либо каталог с подкаталогом pg_xlog, содержащим такие файлы. По умолчанию в поисках этих файлов просматривается текущий каталог, подкаталог pg_xlog текущего каталога и подкаталог pg_xlog каталога PGDATA.

-r менеджер_ресурсов
--rmgr=менеджер_ресурсов

Выводить только записи, созданные указанным менеджером ресурсов (rmgr). Если в качестве этого аргумента передаётся list, pg_xlogdump выводит список возможных имён менеджеров ресурсов и завершается.

-s начало
--start=начало

Позиция в журнале, с которой нужно начать чтение. По умолчанию чтение начинается с первой корректной записи журнала в самом первом из найденных файлов.

-t линия_времени
--timeline=линия_времени

Линия времени, из которой будут читаться записи журнала. По умолчанию используется значение, заданное параметром начальный_сегмент, если он присутствует, а иначе — 1.

-V
--version

Вывести версию pg_xlogdump и завершиться.

-x xid
--xid=xid

Вывести только записи, относящиеся к указанной транзакции.

-z
--stats[=record]

Вывести общую статистику (число и размер записей и образов полных страниц) вместо отдельных записей. Возможен вариант получения статистики по записям, а не по менеджерам ресурсов.

-?
--help

Вывести справку об аргументах командной строки pg_xlogdump и завершиться.

Следующие параметры командной строки включают вывод отметок времени для различных типов записей WAL. Вы можете использовать их вместе с параметрами начальный_сегмент, конечный_сегмент и ключами -s и -e.

-E

Вывести отметку времени последней записи WAL указанного типа, найденную в файле сегмента журнала. Для использования этого ключа вы также должны указать ключ -S.

По умолчанию pg_xlogdump выводит отметки времени только для записей COMMIT. Включить в рассмотрение другие типы записей вы можете, используя ключ -F.

-F [аргумент1,аргумент2,...]

Задаёт типы записей WAL, для которых будут выводиться отметки времени. Для использования этого ключа необходимо также указать ключ -S.

Параметр -F может принимать следующие аргументы, разделённые запятыми:

  • XLOG_RESTORE_POINT — именованные точки восстановления, создаваемые функцией pg_create_restore_point().

  • XLOG_XACT_COMMIT — записи фиксации транзакций. Эти записи создаются командой COMMIT.

  • XLOG_XACT_COMMIT_PREPARED — записи фиксации транзакций, ранее подготовленных для двухфазной фиксации. Эти записи создаются командой COMMIT PREPARED.

  • XLOG_XACT_ABORT — записи прерывания транзакций. Эти записи создаются командой ROLLBACK.

  • XLOG_XACT_ABORT_PREPARED — записи прерывания транзакций, ранее подготовленных для двухфазной фиксации. Эти записи создаются командой ROLLBACK PREPARED.

По умолчанию pg_xlogdump выводит отметки времени только для записей COMMIT.

-S

Выводит отметку времени первой записи указанного типа, найденной в файле сегмента журнала. Этот ключ необходимо указать для применения ключей -E или -F.

По умолчанию pg_xlogdump выводит отметки времени только для записей COMMIT. Включить в рассмотрение другие типы записей вы можете, используя ключ -F.

Замечания

pg_xlogdump может выдавать некорректные результаты, если сервер баз данных работает.

Выводятся записи только указанной линии времени (или линии времени по умолчанию, если она не задана явно). Записи в других линиях времени игнорируются.

pg_xlogdump не будет читать файлы WAL с расширением .partial. Если требуется прочитать такие файлы, уберите расширение .partial из их имён.

См. также

Раздел 30.5