pg_filedump
pg_filedump — отображает отформатированное содержимое файлов кучи, индексов или управляющего файла Postgres Pro
Синтаксис
pg_filedump
[параметр
...] [файл
]
Описание
pg_filedump — утилита для представления управляющего файла и файлов кучи/индекса Postgres Pro в удобочитаемом виде. Вы можете форматировать/выводить содержимое файлов несколькими способами, описанными в разделе Параметры, а также выводить данные непосредственно в двоичном виде. Тип файла (куча/индекс) обычно определяется автоматически по содержимому блоков внутри файла. Однако чтобы прочитать содержимое файла pg_control
, необходимо использовать параметр -c
. По умолчанию весь файл обрабатывается с размером блока, указанным в блоке 0, и отображаются относительные адреса блоков. Значения по умолчанию можно изменить с помощью параметров времени выполнения. Некоторые параметры могут показаться странными, но они необходимы. Например, размер блока может потребоваться задать, если заголовок блока 0 был повреждён.
Установка
pg_filedump поставляется вместе с Postgres Pro Enterprise в виде отдельного пакета pg-filedump-ent-13
(подробные инструкции по установке приведены в Главе 17).
Параметры
По умолчанию выводится содержимое всего файла, с относительными адресами и размером блока, полученным из блока 0.
Для файлов кучи и файлов индекса действуют следующие параметры:
-a
Отображать абсолютные адреса. Содержимое заголовка блока всегда адресуется относительно блока.
-b
Выводить двоичные образы блоков в заданном диапазоне. При этом все остальные параметры форматирования не действуют.
-d
Показать отформатированный вывод байтов блока. При этом все остальные параметры форматирования не действуют.
-D
список_атрибутов
Декодировать кортежи, используя заданный список типов, разделённых запятыми. Список поддерживаемых типов:
bigint
bigserial
bool
char
charN
— char(n)date
float
float4
float8
int
json
macaddr
name
numeric
oid
real
serial
smallint
smallserial
text
time
timestamp
timetz
uuid
varchar
varcharN
— varchar(n)xid
xml
~
— игнорировать все последующие атрибуты в кортеже.-f
Показать отформатированный вывод байтов блока вместе с интерпретацией.
-h
Показать справку.
-i
Выводить подробную информацию об интерпретируемых элементах.
-k
Проверять контрольные суммы блоков.
-o
Не выводить старые значения.
-R
начальный_блок
[конечный_блок
]Показать только заданные диапазоны блоков в файле. Блоки нумеруются, начиная с 0. Параметры
начальный_блок
иконечный_блок
определяют первый и последний блок диапазона, соответственно. Есликонечный_блок
опускается, а задаётся тольконачальный_блок
, будет обработан только один этот блок.-s
размер_сегмента
Задать размер сегмента равным значению
размер_сегмента
.-t
Обрабатывать файлы TOAST.
-v
Вывести дополнительную информацию об отношениях TOAST.
-n
номер_сегмента
Задать номер сегмента равным значению
номер_сегмента
.-S
размер_блока
Задать размер блока равным значению
размер_блока
.-x
Форматировать элементы блока как элементы индекса.
-y
Форматировать элементы блока как элементы кучи.
Для управляющих файлов действуют следующие параметры:
-c
Интерпретировать указанный файл как управляющий файл.
-f
Показать отформатированный вывод байтов содержимого вместе с интерпретацией.
-S
размер_блока
Задать размер блока равным значению
размер_блока
.
Дополнительные параметры:
-m
Интерпретировать файл как файл
pg_filenode.map
и вывести его содержимое. Все остальные параметры будут проигнорированы.
В большинстве случаев рекомендуется использовать параметры -i
и -f
, чтобы получить наиболее информативный вывод.
Автор
Патрик Макдональд <patrickm@redhat.com>