Это возможно. Вроде, как бы, что-то вроде. Может быть.
Одним из решений, которое предположительно поддерживает миграцию MySQL -> PostgreSQL, является открытый источник Continuent Tungsten Replicator .
Вы можете увидеть некоторые инструкции о том, как реализовать эту «гетерогенную репликацию» здесь (хотя предложенный ими метод, использующий Tungsten-Installer, устарел, и вам, возможно, лучше использовать tpm, например так ).
Дело в том, что, хотя есть множество из ресурсов , указывающих, что вольфрам действительно использовал это для поддержки, официально кажется, что они больше не делают . Это означает, что если вы попытаетесь использовать самую последнюю версию Tungsten Replicator (3. *), вы быстро обнаружите, что некоторые файлы, необходимые для Postgres, отсутствуют.
Если, с другой стороны, вы пытаетесь загрузить более старую версию, скажем, 2.2.1, ни одна из этих ошибок не появляется, и все файлы, похоже, присутствуют, что оставляет место для оптимизма.
Лично я должен признать, что я не смог заставить работать 2.2.1, но это, вероятно, больше связано с моим отсутствием опыта использования Tungsten Replicator в целом, а не с поддержкой Postgres. Кроме того, в моем случае элемент реального времени не был так важен, поэтому мы просто завершили работу над заданием cron с pgloader .
Итак, если вам необходимо иметь возможность репликации из MySQL в Postgres в реальном времени, я бы рекомендовал по крайней мере попробовать Tungsten Replicator, прежде чем приступить к реализации собственного решения. Однако, если в реальном времени не является абсолютным требованием, возможно, есть более простые способы.
(Также, возможно, вы захотите взглянуть на SymmetricDS , который утверждает, что делает нечто подобное, хотя я лично не рассматривал это.)