Как организовать репликацию баз данных с одним и тем-же именем в Postgres?
Здравствуйте, имеется несколько серверов с одинаковыми названиями баз данных на Postgres, можно ли организовать репликацию этих баз на одном сервере slave и не будет ли конфликта в связи с идентичным названием баз?
Репликация физическая:
реплицировать несколько мастеров в один слейв невозможно
можете запустить нужное число реплик на разных портах одной системы. Имена баз соответственно безразличны.
Репликация логическая:
я сильно удивлюсь если для какой-то из реализаций логической репликации будет проблемой разные имена баз. Но логическая репликация это логическая репликация. Про DDL операции надо будет помнить и вносить соответствующим образом.
Не совсем понял про разные порты.
Имеем 3 postgres сервера у каждого из которых мы меняем в postgresql.conf port скажем на 5433,5432,5431
На стороне слейв сервера выкачиваем поперемнно через pg_basebackup с каждого из мастер серверов по портам 5433,5432,5431 базу, и в файле recovery.conf создаем 3 записи host. Или как-то иначе?
мастера не трогаем. На хосте под реплики делаете в разные места три basebackup -R, правите в конфигах номера портов, запускаете 3 разных экземпляра базы. Каждый из них смотрит на своего primary