我有一个相当大的数据库,会经历一些大规模的架构更改。将添加许多新实体和关系。坦率地说,现有模式没有足够的信息来生成使用基本UPDATE和INSERT语句迁移数据所需的行和关系。
在mysql数据库中插入和更新记录的最简单方法是什么,需要对现有数据进行大量分析?一种编程语言? Mysql的编程能力?
理想情况下,我想将其作为脚本运行,其余的数据迁移代码(更改表,创建表等),所以这一切都按顺序同时发生。但我在编写基于sql的程序方面并不是最有经验的 - 比如使用变量,函数,逻辑等。在我编写应用程序的20年中,我从不编写存储过程或基于sql的程序 - 尤其是现在。
所以,如果我这样做的话,我可能只是在寻找一天或两天的工作来迁移数据。
还有其他选择吗?或者是否非常需要深入了解SQL的细节?
有什么建议吗?
以下是我需要做的基本算法:
答案 0 :(得分:0)
如果您正在迁移数据并同时更改架构,我建议您创建一个新数据库(对所需的架构进行任何更改),然后将数据迁移到该数据而不修改原始数据库;这也应该备份,只是为了确定。
在如此大的更新中,某些将出错,因此您总是希望能够丢弃新数据库,解决转换问题,创建新的空白数据库并重试。< / p>
我意识到你在MySQL工作但是你也可以访问SQL Server吗?如果你这样做,你可以使用SSIS来迁移数据(除非其他人知道类似于可以与MySQL一起使用的SSIS的开源工具?)
这是一个很好的工具,虽然我建议你买一本关于这个主题的书,但是不需要大量的SQL语言知识才能让事情有效。我从来没有尝试过将SSIS连接到MySQL,但我知道你可以使用ODBC,我在这里找到了一个解释:Connecting to MySQL from SSIS