我们需要在MySQL中重做已经在Informix上完成的数据库,有没有办法不仅可以迁移模式,还可以迁移存储过程?
感谢。
我们有一个客户,我们构建了一个使用Informix数据库的Web应用程序。现在,客户希望能够在多个封闭网络(如20)上实现相同的软件。使用Informix执行此操作将非常昂贵(20个许可证X_X)。
所以最好的方法是在MySQL之类的东西上重做数据库。
应用程序是使用Flex,.Net(使用ODBC)和Informix完成的。
答案 0 :(得分:2)
我做了类似的事情,但我将Informix数据库迁移到了PostgreSQL。起初我dbexported整个数据库,所以整个数据和架构信息都是文本。然后我编写了一些翻译模式的Python程序,例如Informix DATETIME YEAR TO SECOND
必须转换为timestamp with time zone
。
当所有CREATE TABLE/INDEX
等工作时,我将.unl
文件翻译成PostgreSQL COPY
命令。您应该搜索如何在MySQL中进行批量加载,或将这些文件转换为INSERT
命令。
之后我开始转换存储过程。虽然PostgreSQL PL / pgSQL和Informix SPL非常不同,但这部分是最难的,我能够自动转换功能“原型”。函数体必须手动转换。
如果您已完成此操作,则必须检查您的应用程序是否适用于新的SQL实现。