#sql #postgresql #change-data-capture
#sql #postgresql #изменение-захват данных
Вопрос:
Предоставляет ли PostgreSQL функцию отслеживания изменений, подобную функции на SQL Server. это то, чего я в основном хочу. Я хочу переместить свои данные через несколько минут в другую базу данных. для этого я просто хочу получать измененные данные только в PGSQL с помощью отслеживания изменений, подобного отслеживанию изменений SQL Server. Каков наилучший способ добиться этого?
Комментарии:
Ответ №1:
С PostgreSQL это не так просто. Вы можете использовать WAL, он же Write Ahead Logs или триггеры. Может быть, лучшим подходом будет использование внешней библиотеки, такой как https://debezium.io
Комментарии:
1. вам не нужно самостоятельно читать архивы WAL. Вы можете использовать логическое декодирование
Ответ №2:
Я пытаюсь достичь той же цели. Это то, что я нашел в Интернете. Существует несколько возможных подходов:
- Потоковая репликация (отправляет двоичный журнал изменений на резервный сервер)
- Slony (использует триггеры для накопления изменений DML в таблицах, которые периодически отправляются на резервные серверы)
- Логическое протоколирование изменений
- Триггер аудита 91plus
Комментарии:
1. Привет, какой вы предложите наилучший способ из всех этих способов, я думаю, что перемещение данных на резервном сервере с помощью Slony может быть хорошим, поскольку затем я могу использовать эти отслеживания в резервной базе данных для перемещения измененных данных на sql server с помощью запущенного приложения, т.е. Windowsсервис