mysql的数据如何同步到sqlserver

这就是陷阱:直接使用SQLyog将SQL Server数据导入MySQL效率低且容易出错。
不要这样做。

实用提醒:使用MySQL Workbench或命令行工具将SQL Server数据导出到SQL文件中,然后导入到MySQL中。

sql怎么导入mysql数据库

说实话,当我第一次开发这个用于 MySQL 连接 SQL Server 的 ODBC 驱动程序时,我真的很沮丧。
记得当时公司刚刚上线MySQL,但是报表系统还是用的SQL Server。
老板坚持要求两组数据可以互相看到。
我花了整整两天的时间来完成这些步骤。

1 .安装 MySQL 的 ODBC 驱动程序。
这一步首先要明确,它不仅仅是下载MySQLODBCConnector的问题。
我特地去官网找到了。
当时我下载了MySQL ODBC 5 .3 6 4 位驱动程序,但后来发现5 .2 Unicode版本更稳定,尤其是在使用SQL Server 2 01 6 时。
关键在于配置步骤:从控制面板中找到“数据源(ODBC)”,单击系统DNS,添加新驱动程序。
我向上滑动并选择名为“MySQL ODBC 5 .2 Unicode Driver”的驱动程序,然后填写参数。
我使用“DB_MySQL”作为数据源名称,IP是内网IP,默认端口是3 3 06 老实说,IP和端口应该与你的MySQL安装设置相匹配。
我的一个同事因为改了3 3 07 端口,折腾了好久。

2 .添加链接服务器是最艰巨的步骤。
我使用的代码与您发布的完全相同,但是有一点您需要特别注意。
sp_addlinkedserver 中的datasrc 必须与ODBC 配置中的数据源名称相对应。
第一次运行的时候报错“无法与MySQL服务器建立连接”。
检查了很长时间的日志,发现rmtpassword 参数中的密码被 SQL Server 解析为 SQL 语句,因此必须加引号。
只需将其更改为“root”而不是 root 即可。
还有另一种危险。
sp_addlinkedsrvlogin中的locallogin,我第一次使用windows身份验证,填了空字符串,但是连接失败。
后来我改成sa用户名,然后填写密码。
这段代码我调试了三遍,每次都遇到一个小问题。

3 数据迁移是最麻烦的。
创建内容数据库是一件小事,但是当我使用OPENQUERY查询表结构时,却踩了一个大坑。
第一次直接使用“material.ic_goods”作为表名时,出现错误。
查资料后发现,带点的表名应该用引号括起来,改成‘material.ic_goods’。
最让我头疼的是数据录入。
我先尝试了SELECT INTO,发现SQL Server中MySQL的null值被改为'',导致数据混乱。
最终,我切换到 BULK INSERT 并添加了 IF NOT EXISTS 决策,这更加高效。
整个过程花了我三个晚上的时间,引导了2 00张桌子。

现在想起来,最重要的是ODBC配置中的DataSrc和链接服务器中的DataSrc必须一致,并且密码不能包含引号。
工作虽然不难,但每一个细节都要做好。
我建议您先在测试环境中运行它,特别是如果表名包含特殊字符。
这次我要告诉你提出建议:在sp_addlinkedsrvlogin中,建议将@useself参数设置为true,这样可以省去很多麻烦。

MySQL导出的.sql文件如何将数据导入到SQL Server??

上周,有客户询问如何将MySQL中的数据导入到SQL Server中。
我已经详细解释了这两种方法。
首先是通过编写程序来排查数据,然后处理程序中数据类型冲突的问题。
这种方法比较灵活,但需要一定的编程能力。
第二种方法要简单得多。
SQL Server管理工具中有数据导入向导,可以直接使用。
该向导支持 ODBC(开放数据库连接)方法导入数据。
对于 MySQL,您可以从 MySQL 网站下载 Windows 版本的 mysqlodbc 库。
安装 MySQL 后,您可以在本地映射到 ODBC。

接下来,选择ODBC导入SQL Server,自动将MySQL中的数据导出到SQL Server。
这种方法不需要高级的编程技能,并且易于操作。
不管怎样,哪个系统适合你就看你了。
我仍在思考这个问题,哪种方法似乎更有效。