Репликация с MySQL на SQL Server - PullRequest
       9

Репликация с MySQL на SQL Server

0 голосов
/ 30 сентября 2019

У меня есть система, в которой данные записываются постоянно. Он работает на MySQL, у меня также есть вторая система, которая работает на SQL Server и использует некоторые параметры из первой базы.

Вопрос: как это возможно (даже возможно) постоянно передавать значения из одной базы(MySQL) другому (SQL Server)? Возможность переключения на одну базу не вариант. Насколько я понимаю, необходимо будет написать, например, программу на Delphi, которая будет передавать значения из другой базы данных в другую.

1 Ответ

0 голосов
/ 30 сентября 2019

У вас есть несколько опций.

SQL Server может обращаться к другой базе данных с помощью ODBC, поэтому вы можете настроить SQL-сервер для получения необходимой ему информации непосредственно из таблиц, хранящихся в MySQL.

MySQL поддерживает репликацию с использованием файлов журнала, поэтому вы можете настроить репликацию MySQL (которая не обязательно должна быть во всех таблицах) для записи соответствующих транзакций в файл журнала. Затем вам нужно будет обработать этот файл журнала (что вы можете сделать (почти) в режиме реального времени, как это делает стандартная репликация MySQL), чтобы определить, что необходимо записать в MS SQL Server. Как правило, это приведет к набору операторов для сервера MS SQL. У вас есть любое количество языков, которые вы могли бы использовать для обработки файла журнала и выпуска обновлений.

У вас может быть запланированное задание, которое считывает необходимые параметры из MySQL и отправляет его в MS SQL, но это оставляетпериод времени, когда эти два не могут быть синхронизированы. Учитывая, что у вас могут возникнуть проблемы с анализом файлов журналов и публикацией обновлений, вы все равно можете реализовать это в качестве запасного варианта при обработке файлов журналов.

Если SQL Server и сервер MySQL находятся наВ той же сети метод внешних таблиц, вероятно, будет самым простым и минимальным обслуживанием, но в зависимости от объема задействованных данных вы можете столкнуться с накладными расходами внешнего соединения, и запросы могут повлиять на общую производительность запросов, выполняемых к MS SQL Server.

...