SQLSERVER 链接 MYSQL 的 两种方法 及 未发现数据源名称并且未指定默认驱动程序 处理办法

原创 2016年03月03日 19:54:44
MSSQL和MYSQL建立 链接:


-- 方法一、提前在电脑上安装mysqlodbc驱动,在系统odbc数据源中预先添加一个DSN名为testmysql的数据源,,并配置好dsn,并测试能连通。


EXEC sp_addlinkedserver  @server = 'testmysql11', @srvproduct='MySQL', @provider = 'MSDASQL', @datasrc = 'testmysql'


EXEC sp_addlinkedsrvlogin  @rmtsrvname='testmysql11',@useself='false',@locallogin='sa',@rmtuser='wx',@rmtpassword='1234'


SELECT * FROM OPENQUERY(testmysql11, 'select * from data_account_address ' )


方法二、前提是先安装好驱动程序,不用再odbc里面建立dsn,通过指定指定名称,调用指定的驱动去建立。

建立链接

EXEC sp_addlinkedserver 
    @server='MySQLTestKKK',
    @srvproduct = 'db_main', --MYSQL的这里是数据库名,貌似填错也没关系
    @provider = 'MSDASQL',
    @datasrc = NULL,
    @location = null,
    @provstr = 'DRIVER={MySQL ODBC 5.3 Unicode Driver};SERVER=your ip and so on;DATABASE=db_main;UID=root;PORT=3306;',---MySQL ODBC 5.3 Unicode Driver 这里是变化的,应该是随着,安装驱动版本的不同,在ODBC里显示的名称不同,稍微有点变化,但是要以ODBC显示出的默认名称为准。否则有可能报错“OLE DB 访问接口 "MSDASQL" 返回了消息 "[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序"。” 网上看过很多文章,但是这里没讲清楚,所有大多数人只会用第一种方法。
---说明一点:EXEC sp_addlinkedserver @provstr = 'DRIVER= 后面的“MySQL ODBC 5.3 Unicode Driver” 一定要是建立链接的机器上安装mysql odbc 驱动的机器上的ocbc显示的名称,这个机器有可能是远程机器,也有可能是本地机器,取决于你登录sqlserver时的选择,并且那台机器一定要安装好相应驱动。
--再说明一点,有的人嫌 <span style="font-family: Arial, Helvetica, sans-serif;">DRIVER= 后面的“MySQL ODBC 5.3 Unicode Driver” ,手写不一定写得对,在xp下,可以通过注册表复制相关键名的方法实现</span>
 --HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\MySQL ODBC 5.1 Driver
--另外不知大家注意到了我xp上用的名称是MySQL ODBC 5.1 Driver ,而服务器上用的是MySQL ODBC 5.3 Unicode Driver ,二者 写错了就报“OLE DB 访问接口 "MSDASQL" 返回了消息 "[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序"
@catalog = NULL

登陆:
go
    EXEC sp_addlinkedsrvlogin 
    @rmtsrvname='MySQLTestKKK',--和上面的一直
    @useself='false',
    @rmtuser='wx',
    @rmtpassword='1234';

测试:

SELECT * FROM OPENQUERY(MySQLTestKKK, 'select * from data_account_address ' )

删除相关:    

Exec sp_droplinkedsrvlogin MySQLTestKKK,Null 

EXEC sp_dropserver MySQLTestKKK   


    请使用 sp_helpserver 来显示可用的服务器。

参考同僚文档,一并感谢。



实时错误'-2147467259(80004005)': [Microsoft][ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序

问题1:实时错误'-2147467259(80004005)': [Microsoft][ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序   解决方法1:①找到"C:\windows...
  • wangqingbo0829
  • wangqingbo0829
  • 2013年06月08日 18:58
  • 13152

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

1. 今天下午修改很早做的一个系统,用的是JDBC-ODBC驱动。   在我本机Tomcat做测试,发现使用startup.bat启动Tomcat服务后,访问Web服务一切正常。   但使用Monit...
  • jrq
  • jrq
  • 2007年04月18日 18:33
  • 18939

Java Access [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

在Win7 64位系统下,使用Java+Access数据库编程,用Java连数据库时,出现错误提示,如下: Java java.sql.SQLException: [Microsoft][ODBC...
  • zhaoliangbao2778
  • zhaoliangbao2778
  • 2017年03月28日 17:40
  • 3578

win7系统IIS7[ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005' [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱...
  • u012867952
  • u012867952
  • 2015年02月11日 15:23
  • 1467

解决: [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

问题现象:-在vs.net 2003 下通过odbc 连接mssql6.5 可以正常取得数据。-转至vs.net 2005 下用同样的方法,用odbc 去取MSSQL6.5 出错误,错误信息如下: [...
  • zwxrain
  • zwxrain
  • 2008年06月25日 14:40
  • 32849

Windows 64位 连接Access数据库"未发现数据源名称并且未指定默认驱动程序"的解决办法

64位Windows系统连接Access数据库,程序中可能需要修改Access数据库连接:   32位:String strUrl = "jdbc:odbc:driver={Microsoft Ac...
  • i2295301
  • i2295301
  • 2016年05月05日 10:54
  • 5331

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 的解决方法之一

白天在公司做一个网站做的好好的 晚上回家就报错。 [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 同一个IIS下另一个网站也是ac...
  • sctzkj
  • sctzkj
  • 2015年12月26日 22:05
  • 2392

未发现oracle(TM)客户端和网络组件?解决办法如下。

在asp的WEB程序中,后台用oracle的服务器版,运行正常。但改用客户端后,有如下错误:未发现oracle(TM)客户端和网络组件。这些组件是由oracle公司提供的,是oracle7.3版(或更...
  • htyy521
  • htyy521
  • 2006年06月09日 16:36
  • 15288

qt 连接sqlserver 出现 “未发现数据源名称并且未指定默认驱动程序”的错误解决方法

这几天用QT连接数据库。(环境:xp系统,vs2008写QT代码,数据库是sqlserver2000) 用了各种方法实在 是连不上,但是最后还是在网上找的了方法。虽然最后不知道为什么只有这样才可以...
  • JM_KB
  • JM_KB
  • 2013年11月28日 22:44
  • 2512

sql和mysql区别

mssql 的正式名字是 SQL Server MS公司出的。图形操作界面好一些,性能还可以。在在mssql和oracle上不能互换.支持OLEDB连接.asp、mssaql只能for window ...
  • chenhuajie123
  • chenhuajie123
  • 2013年09月23日 10:53
  • 12702
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQLSERVER 链接 MYSQL 的 两种方法 及 未发现数据源名称并且未指定默认驱动程序 处理办法
举报原因:
原因补充:

(最多只允许输入30个字)