我有 MySQL 数据库备份文件(Mysql 版本 5.1)并且我想在 Sqlserver 2008 中恢复它,我该如何恢复它?
答案1
您无法自动将 MySQL 备份还原到 SQLServer 2008。您可以编写转换脚本来转换数据,或者使用 Microsoft DTS(现在称为 SQL Server Integration Services)之类的工具。
答案2
如果你仍然可以访问 MySQL 中的数据库,你应该能够使用 mysqldump 命令将数据从 MySQL 中取出,转换为 MS SQL 可用的格式,然后--兼容=mssql命令行开关。但是,如果将转储文件导入 SQL Server 时出现错误,您有时最终还是必须手动编辑转储文件。
如果您只能访问备份文件,则将其导入到 MySQL 的新实例中,然后将其转储到新的备份文件中,相同的策略可能会起作用。
答案3
在 MYSQL 数据库上使用 SQL 脚本生成器,然后在 MSSQL 数据库上运行脚本文件。只要您没有重叠的不同类型,就应该没问题。
要创建数据库创建脚本:
- 打开 MySQL 查询浏览器窗口
- 打开新的脚本选项卡(Ctrl + Shift + T)
- 将所需表拖到脚本选项卡上
- 您应该看到生成的 CREATE TABLE 脚本
然后您需要将数据导出为 CSV,以便可以导入它。
此外,Redgate 有一个针对 MYSQL 的 SQL Compare 的早期版本,您可以试用一下,看看它是否可以帮助生成两种类型之间的脚本(我不知道,因为我还没有尝试过):