Миграция схемы и SP из informix в mysql - PullRequest
1 голос
/ 18 марта 2010

Нам нужно восстановить базу данных в MySQL, которая уже была сделана в Informix, есть ли способ перенести не только схему, но и хранимые процедуры?

Спасибо.

У нас есть клиент, для которого мы создали веб-приложение, использующее базу данных Informix. Теперь клиент хочет иметь возможность реализовывать одно и то же программное обеспечение, но в нескольких закрытых сетях (например, 20). Делать это с использованием Informix было бы очень дорого (20 лицензий X_X).

Таким образом, лучший подход - переделать базу данных на что-то вроде MySQL.

Приложение было создано с использованием Flex, .Net (с использованием ODBC) и Informix.

1 Ответ

2 голосов
/ 02 апреля 2010

Я сделал похожую вещь, но я перенес базу данных Informix в PostgreSQL. Сначала я экспортировал всю базу данных, поэтому все данные и информация о схеме были в тексте. Затем я написал несколько программ на Python, которые переводили схему, например, Informix DATETIME YEAR TO SECOND должен быть преобразован в timestamp with time zone.

Когда все CREATE TABLE/INDEX и т. Д. Сработали, я перевел .unl файлы в команды PostgreSQL COPY. Вам следует поискать, как выполнить массовую загрузку в MySQL или преобразовать эти файлы в команды INSERT.

После этого я начал преобразовывать хранимые процедуры. В то время как PostgreSQL PL / pgSQL и Informix SPL сильно различаются, эта часть была самой сложной, и мне удалось автоматически преобразовать только «прототипы» функций. Тело функции пришлось преобразовывать вручную.

Если вы выполнили это, вам придется проверить, хорошо ли работает ваше приложение с новой реализацией SQL.

...