尝试使用 ODBC 连接设置链接服务器连接。在一台服务器上,我们发现我们可以成功地让它工作,但我们无法让 SSIS 正确地使用 ODBC 连接。在更糟糕的情况下,您可以使用 SSIS 执行链接服务器查询,以通过存储过程调用来获取数据。以下是在本例中为我们工作的示例链接服务器连接。
EXEC master.dbo.sp_addlinkedserver @server = N'Some_MySQL_Server_Name', @srvproduct=N'MySQLDatabase', @provider=N'MSDASQL', @datasrc=N'Some_ODBC_Name'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'Some_MySQL_Server_Name',@useself=N'False',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
去
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'collation compatible', @optvalue=N'false'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'data access', @optvalue=N'true'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'dist', @optvalue=N'false'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'pub', @optvalue=N'false'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'rpc', @optvalue=N'false'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'rpc out', @optvalue=N'false'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'sub', @optvalue=N'false'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'connect timeout', @optvalue=N'0'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'collation name', @optvalue=null
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'惰性模式验证', @optvalue=N'false'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'查询超时', @optvalue=N'0'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'使用远程排序规则', @optvalue=N'true'
去吧
EXEC master.dbo.sp_serveroption @server=N'Some_MySQL_Server_Name', @optname=N'remote proc transaction Promotion', @optvalue=N'true'
去吧