pg_waldump
pg_waldump — вывести журнал предзаписи кластера БД Postgres Pro в понятном человеку виде
Синтаксис
pg_waldump [параметр...] [начальный_сегмент [конечный_сегмент]]
Описание #
Программа pg_waldump показывает содержимое журнала предзаписи (WAL) и прежде всего полезна для целей отладки и обучения.
Эту утилиту может запускать только пользователь, установивший сервер, так как ей требуется доступ на чтение к каталогу данных.
Параметры
Следующие аргументы командной строки задают расположение данных и формат вывода:
- начальный_сегмент
- Начать чтение с указанного файла сегмента WAL. Это неявно определяет каталог, в котором будут находиться файлы, и целевую линию времени. 
- конечный_сегмент
- Остановиться после чтения указанного файла сегмента WAL. 
- -b- --bkp-details
- Выводить подробные сведения о блоках-копиях страниц. 
- -B- блок- --block=- блок
- Выводить только записи, изменяющие указанный блок. При этом также необходимо указать отношение в аргументе - --relationили- -R.
- -e- конец- --end=- конец
- Прекратить чтение в заданной позиции в WAL, а не читать поток до конца. 
- -f- --follow
- Достигнув конца корректного WAL, проверять раз в секунду поступление новых записей WAL. 
- -F- слой- --fork=- слой
- Выводить только записи, изменяющие блоки в указанном слое. Допустимые значения: - main(основной слой),- fsm(карта свободного пространства),- vm(карта видимости) и- init(слой инициализации).
- -n- предел- --limit=- предел
- Вывести заданное число записей и остановиться. 
- -p- путь- --path=- путь
- Задаёт каталог, содержащий файлы сегментов WAL, либо каталог с подкаталогом - pg_wal, содержащим такие файлы. По умолчанию в поисках этих файлов просматривается текущий каталог, подкаталог- pg_walтекущего каталога и подкаталог- pg_walкаталога- PGDATA.
- -q- --quiet
- Не выводить ничего кроме ошибок. Этот ключ может быть полезен, когда вы хотите узнать, можно ли полностью разобрать диапазон записей WAL, но собственно содержимое записей вас не интересует. 
- -r- менеджер_ресурсов- --rmgr=- менеджер_ресурсов
- Выводить только записи, созданные указанным менеджером ресурсов. Вы можете указать параметр несколько раз, чтобы выбрать несколько менеджеров ресурсов. Когда в качестве имени менеджера передаётся - list, программа выводит только список возможных имён менеджеров ресурсов и завершается.- Расширения могут определять пользовательские менеджеры ресурсов, но pg_waldump не загружает модули расширений и поэтому не может распознать пользовательские менеджеры ресурсов по имени. Вместо этого можно обозначить пользовательского менеджера ресурсов в форме - custom###, где- ###— трёхзначный идентификатор менеджера ресурсов. Обозначения в этой форме всегда будут считаться действительными.
- -R- табл_пространство/- бд/- отношение- --relation=- табл_пространство/- бд/- отношение
- Выводить только записи, изменяющие блоки в указанном отношении. Отношение указывается с OID табличного пространства, OID базы данных и номером файла, разделёнными косой чертой, например - 1234/12345/12345. В этом же формате отношения обозначаются в выводе программы.
- -s- начало- --start=- начало
- Позиция в WAL, с которой нужно начать чтение. По умолчанию чтение начинается с первой корректной записи WAL в самом первом из найденных файлов. 
- -t- линия_времени- --timeline=- линия_времени
- Линия времени, из которой будут читаться записи WAL. По умолчанию используется значение, заданное параметром - начальный_сегмент, если он присутствует, а иначе — 1. Значение можно задавать в десятичном или шестнадцатеричном представлении, например- 17или- 0x11.
- -V- --version
- Вывести версию pg_waldump и завершиться. 
- -w- --fullpage
- Выводить только записи, содержащие образы полных страниц. 
- -x- xid- --xid=- xid
- Вывести только записи, относящиеся к указанной транзакции. 
- -z- --stats[=record]
- Вывести общую статистику (число и размер записей и образов полных страниц) вместо отдельных записей. Возможен вариант получения статистики по записям, а не по менеджерам ресурсов. - Если программа pg_waldump прерывается сигналом SIGINT (Control+C), она выдаёт сводку по данным, которые были обработаны к моменту прерывания. Эта операция не поддерживается в Windows. 
- --save-fullpage=- путь_хранения
- Сохранять образы полных страниц, записываемые в WAL, в каталог, указанный в - пути_хранения. Фильтровать сохраняемые образы и ограничивать их вывод можно так же, как и для записей.- Образы полных страниц сохраняются с именами в таком формате: - TIMELINE-- LSN.- RELTABLESPACE.- DATOID.- RELNODE.- BLKNO_- FORK- Компонент - Описание - TIMELINE - линия времени файла-сегмента WAL, в котором хранится запись, состоит из одного шестнадцатеричного числа шириной 8 символов - %08X- LSN - LSN записи с этим образом, состоит из двух шестнадцатеричных чисел шириной 8 символов - %08X-%08X- RELTABLESPACE - OID табличного пространства, содержащего блок - DATOID - OID базы данных, содержащей блок - RELNODE - номер файлового узла для блока - BLKNO - номер блока - FORK - имя слоя, в котором был создан образ полной страницы: - main,- fsm,- vmили- init
- -?- --help
- Вывести справку об аргументах командной строки pg_waldump и завершиться. 
Переменные окружения
- PGDATA
- Каталог данных; также см. параметр - -p.
- PG_COLOR
- Выбирает вариант использования цвета в диагностических сообщениях. Возможные значения: - always(всегда),- auto(автоматически) и- never(никогда).
Примечания
Когда сервер работает, результаты могут быть некорректными.
Выводятся записи только указанной линии времени (или линии времени по умолчанию, если она не задана явно). Записи в других линиях времени игнорируются.
pg_waldump не будет читать файлы WAL с расширением .partial. Если требуется прочитать такие файлы, расширение .partial нужно убрать из их имён.