有一个在Informix中创建的现有数据库。我想导出它,然后将它导入MySQL。
我尝试使用dbschema导出它,它为表创建了dbase.sql文件和几个table00123.unl文件。
我试图将.sql文件导入MySQL,它不喜欢Informix导出的文件的语法。
我只想知道导出/转储/输出Informix数据库的最佳方法,该数据库可以导入到MySQL中。
发布于 2014-10-23 13:10:46
首先,您需要将输出文件转换到最接近MySQL语法的位置,并根据MySQL转换数据类型。您可以第一次使用perl或sed脚本,然后使用这些技术供以后使用。一旦准备好了创建表的文件,然后从informix生成动态insert语句,并在MySQL中使用它们来加载数据。
你好,纳瓦兹
发布于 2014-10-23 13:28:50
有一个很好的帖子这里。我建议您花一些时间学习此页 (我认为您熟悉Informix)。正如第一篇文章所建议的,如果您正在迁移存储过程,那么您将遇到更多的麻烦--逻辑结构之间通常没有1比1的对应,因为不同的数据类型之间可能存在对应关系。
至于外键,我会把这些保留到您移动数据之后--您总是可以发出ALTER语句--或者转储您的(无外键)数据库,并将这些外键语句放到脚本的CREATE部分(更好的IMHO)。
如果你有什么特别的问题,请回我们这里。哦,和BTW,如果我是你的话,我会仔细记录每一步--如果你必须做一次,你可能要做几次。你可能会喜欢看这 -(我从来没有用过它,尽管有个朋友对Talend有好话要说)。
编辑
除了@NawazSohail提到了MySQL工作台(这是使用MySQL的一个很好的工具,特别是如果您不是命令行的忠实粉丝),您还可以特别看看这里和这个职位。
发布于 2015-09-24 17:40:14
我同意纳瓦兹的看法。WorkBench迁移工具工作得很好,至少在Mysql和Mysql之间是这样的。另一种解决方案是使用像PowerDesigner或Embarcadero数据架构师Studio这样的建模工具。从INformix反向工程您的模式,然后将模式切换到Mysql。然后,可以生成脚本并将其应用于Mysql。对于数据导出,您需要进行一些转换(特别是日期)。
https://dba.stackexchange.com/questions/80925
复制相似问题