#oracle12c #oracle-golden-gate
#oracle12c #oracle-golden-gate
Вопрос:
У меня настроен процесс Replicat GoldenGate for Oracle (123015) для получения изменений из базы данных Oracle 12c.
Я могу получить все изменения ВСТАВКИ / ОБНОВЛЕНИЯ / удаления в файлах отслеживания. Однако во время операции ОБНОВЛЕНИЯ раздел After записи в файле отслеживания включает только столбцы, которые были изменены.
Согласно документации, если
- В базе данных включено ПРИНУДИТЕЛЬНОЕ ВЕДЕНИЕ ЖУРНАЛА и ДОПОЛНИТЕЛЬНЫЕ ДАННЫЕ ЖУРНАЛА ДЛЯ ВСЕХ СТОЛБЦОВ,
- Файл параметров ИЗВЛЕЧЕНИЯ в GoldenGate включает параметры LOGALLSUPCOLS и UPDATERECORDFORMAT FULL,
раздел записи AFTER должен содержать все столбцы, но это не так : (
Ответ №1:
Чтобы не полагаться на документацию. Проведите несколько собственных тестов. Пожалуйста, ознакомьтесь с полным объяснением, что именно процесс извлечения GoldenGate 12.3 записывает в трассировку.
Комментарии:
1. Я перешел по ссылке и перепробовал все случаи, но все еще не смог получить все столбцы в разделе «После». В любом случае, я каким-то образом заставил это работать, сравнивая ключи / значения между разделами «до» и «после».
Ответ №2:
Вам нужно использовать GETUPDATEBEFORES, чтобы получить изображение записей обновления до:
Ответ №3:
В подключаемой базе данных просто нужно добавить дополнительное ведение журнала для всех столбцов
ALTER PLUGGABLE DATABASE ORCLPDB ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;