我想将表从MySQL复制到SQL Server。
使用MySQL连接的ADO.NET源。
OLE DB目标,SQL Server。
声明是一份完整的副本,所以没什么大不了的。当我点击播放按钮时,一段时间后会弹出一个错误。我设置了一个DataViewer并重新启动,在检查DataViewer的同时从DataFlow内部运行它。过了一会儿(这次花了更长的时间)错误。
错误:数据流任务中的0xC02090F5,ADO NET源1:组件 “ADO NET Source”(1)无法处理数据。致命错误 在数据读取期间遇到。
错误:数据流任务中的0xC0047038, SSIS.Pipeline:SSIS错误代码DTS_E_PRIMEOUTPUTFAILED。该 组件“ADO NET Source”(1)上的PrimeOutput方法返回错误 代码0xC02090F5。组件返回失败代码时 管道引擎称为PrimeOutput()。失败代码的含义 由组件定义,但错误是致命的和管道 停止执行。在此之前可能会发布错误消息 有关失败的更多信息。
对此错误有任何想法吗?
答案 0 :(得分:5)
这花了我几天才弄明白......所以我想我会分享我的笔记
如何连接数据并将数据从MySQL加载到SQL Server
1 - 下载32位ODBC驱动程序。 转到MySQL网站并下载:“mysql-connector-odbc-5.2.4-ansi-win32.msi”注意:不要在BIDS 2008上使用64位驱动程序.BIDS 2008是32位。创建SSIS的连接管理器时,您将收到不匹配错误:“指定的DSN包含驱动程序和应用程序之间的体系结构不匹配”
2 - 创建用户DSN您需要打开使用Windows 32 ODBC管理工具。不要在控制面板中打开常规ODBC管理员。打开位于此处的ODBC管理员:c:\ Windows \ SysWOW64 \ odbcad32.exe。如果您使用默认的ODBC管理员...它将无法正常工作。此外,您必须创建“用户DSN” - 而不是系统DSN。否则它将不会显示在SSIS中注意:屏幕看起来相同,因此您将无法知道您是否使用32位BIT ODBC管理工具。
3 - 创建新的SSIS包并创建ADO.NET连接管理器和ADO.NET SQL Server目标。
4 - 更改Source ADO.NET属性。您将收到验证错误,您的包将无法运行。您需要将ADO.NET源中的“ValidateExternalMetadata”更改为FALSE(在“高级编辑器”对话框中)它还会为您提供元数据错误...没关系......只需单击“确定”即可。它仍将拉取元数据(列名/数据类型)。您不能像在SQL Server中那样选择表。您需要键入SQL select语句。
5 - 运行包,应该正常运行并加载。