Как прочитать данные файла PostgreSQL wal? Есть ли какая-либо команда для преобразования двоичного файла PostgreSQL в читаемый текстовый формат?

#postgresql #postgresql-9.2

#postgresql #postgresql-9.2

Вопрос:

Я пытаюсь прочитать файл PostgreSQL wal . Это двоичный файл, и я не могу прочитать wal данные файла в текстовом формате. Кто-нибудь может мне помочь в этом. Есть ли какая-либо команда или что-то еще для чтения wal данных файла?

Комментарии:

1. Не связано, но: вы действительно все еще используете Postgres 9.2? Эта версия больше не поддерживается , вам следует запланировать обновление до поддерживаемой версии сейчас.

Ответ №1:

Как правило, в Postgres есть два варианта представления WAL в каком-либо удобочитаемом формате:

  1. pg_waldump утилита, но она доступна только в версии 9.3 . Вы можете попробовать использовать pg_waldump из 9.3 с 9.2 WALS, но я не уверен в успехе. Это может сработать, поскольку в 9.2 не должно быть никаких новых типов записей WAL, которых нет в 9.3. Примечание: pg_waldump вызывался pg_xlogdump до Postgres 10.0
  2. Также можно использовать логическое декодирование, но оно доступно с 9.4. В любом случае, при логическом декодировании можно использовать различные плагины, такие wal2json как для экспорта записей в удобочитаемый формат. Примечание: логическое декодирование может не декодировать каждую запись WAL, в основном это касается DML (вставка / обновление / удаление)

Таким образом, я бы настоятельно рекомендовал обновить ваш кластер как минимум до Postgres 9.4.

Ответ №2:

Вы должны использовать wal2json, но он работает только для pg9.4

https://github.com/eulerto/wal2json