|
|
|
SymmetricsDS для oracle<->postgres репликации.
|
|||
|---|---|---|---|
|
#18+
Hужна двухсторонняя репликация oracle <-> postgres. Более того, в базе oracle есть триггеры, подменяющие данные, по сиквенсам и пр. Переписать функционал без этих триггеров "на лету" меняющих данные, нет возможности. В базе postgres таких триггеров нет. Т.о. при каждой операции insert, update в БД postgres нужно реплицировать её в oracle, посмотреть как её изменят триггера "на лету" и отразить обратно в postgres. Двусторонняя репликация работает (без учёта FK). Делаю AFTER триггер, который вставляет строку в symmetrics табличку SYM_DATA. Чтобы при обновлении строки в postgres, она улетела в ora, изменилась триггерами "на лету", затем появилось бы задание отобразить изменённую строку обратно, в postgres. Этот AFTER триггер делаю выполняющимся последним (инструкцией FOLLOWS). Что происходит: 1. Репликация pg->ora выполняется. 2. Отрабатывает AFTER триггер, вставляя строку в SYM_DATA. 3. Symmetrics не выполняет появившееся задание по переносу обратно ora->pg. Видимо боится петель и зацикливаний. Что можно сделать? Хотя бы как заставить Symmetrics зациклиться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2018, 11:13 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=118&tid=1884128]: |
0ms |
get settings: |
10ms |
get forum list: |
24ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
25ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
31ms |
get tp. blocked users: |
2ms |
| others: | 224ms |
| total: | 336ms |

| 0 / 0 |
