Запуск или перезапуск логической репликации в postgres, когда таблицы не синхронизированы

У меня есть таблица в двух базах данных под названием тест. Мне удалось создать строку в исходной базе данных и воспроизвести ее в целевой базе данных. Но затем я удалил строку в целевой базе данных. Как мне вернуть строку? Что, если в каждой таблице миллион строк, и я хочу синхронизировать две таблицы, потому что по какой-то причине они повторяются в целевой базе данных и т. Д.

Вот что я сделал

create role sub247 with login password 'fakepassword' 
     replication;

SELECT * FROM pg_stat_replication;

изменить ограничение доступа к логину пользователя sub247;

GRANT ВЫБРАТЬ НА ВСЕ СТОЛЫ В СХЕМЕ public to sub247;

CREATE TABLE public.test (тестовый текст COLLATE pg_catalog."Default", test2 bigint) WITH (OIDS = FALSE) TABLESPACE pg_default;

ALTER TABLE public.test ВЛАДЕЛЕЦ postgres; вставить в тест (test,test2) значения ('a',1)

полная идентификация реплики тестовой таблицы; создать публикацию pub247b для проверки таблицы;

а затем в целевой базе данных

create subscription sub247b connection 'host=facebook.com dbname=247 user=sub247 password=fakepassword port=5432' publication pub247b;

а затем через некоторое время... удалить из теста.

Теперь, как мне снова синхронизировать тест на целевой базе данных

0 ответов

Другие вопросы по тегам