【发布时间】:2023-04-03 20:15:01
【问题描述】:
您能否告诉我如何将数据从一个 MySQL 数据库导入另一个 MySQL 数据库。两个数据库的数据架构完全不同,第二个数据库是第一个数据库的规范化版本。
提前致谢
【问题讨论】:
您能否告诉我如何将数据从一个 MySQL 数据库导入另一个 MySQL 数据库。两个数据库的数据架构完全不同,第二个数据库是第一个数据库的规范化版本。
提前致谢
【问题讨论】:
我认为更好的方法是使用 ETL 软件。
提取、转换和加载 (ETL) 是数据库使用中的一个过程,涉及:
【讨论】:
您说的是提取、转换、加载 (ETL) 脚本。
从非规范化数据到规范化数据是地狱。我希望你正在做相反的事情 - 规范化到非规范化 - 就像这样:
编写一个 shell 脚本:
mysqldump olddb >dump.sql
mysql newdb <dump.sql CREATE TABLE AS SELECT ...命令并运行它们
通过mysql创建
非规范化数据。将非规范化数据转换为规范化数据非常困难,需要一种特定于您拥有的数据集的方法。
【讨论】:
我同意斯蒂芬所说的,但您可以使用类似的技术来实现它。但是您必须创建更详细的查询。您可以执行以下操作:
INSERT INTO table1(field1, field2,...) SELECT field4,field1,... FROM table1;
显然,您必须以正确的顺序执行此操作,IMO 这是一种很好的方法,因此您可以使用连接等创建复杂的查询。
【讨论】: