当前位置: 代码迷 >> Sql Server >> mssql 远程连接 mysql数据库解决思路
  详细解决方案

mssql 远程连接 mysql数据库解决思路

热度:101   发布时间:2016-04-27 14:17:20.0
mssql 远程连接 mysql数据库
请教当前数据库为MSSQL,想远程连接MYSQL数据库,具体应当怎么操作?

------解决方案--------------------
SQL code
sqlserver2005远程连接 mysql 2种方法一是通过建立link的方法sp_addlinkedserver     'ntest-link名',   'MySQL',  'MSDASQL--支持的链接方式',  'mytest-dsn名'GOsp_addlinkedsrvlogin   'ntest-link名','false', 'sa-sqlserver用户','mythzz-sqlserver密码'具体可以参考 帮助文档select  * from  ntest..pdns.tt但是我式了 提示拒绝用户需要密码Driver]Access denied for user等空了在搞下第二种方法是直接用OPENROWSET与OPENQUERY(具体可以查sql帮助文档)开启数据库选项SP_CONFIGURE 'show advanced options',1 GO RECONFIGURE GO -- 为开启为关闭 SP_CONFIGURE 'Ad Hoc Distributed Queries',1 GO RECONFIGURE GO SP_CONFIGURE 'show advanced options',0 GO RECONFIGURE  SELECT *FROM OPENROWSET('MSDASQL','mytest';'root';'mythzz',   'SELECT * FROM pdns.tt')
------解决方案--------------------
参考:

SQL code
/*标题:SQL Server 2000 连接mysql.作者:爱新觉罗.毓华 时间:2009-02-23地点:广东深圳*/--连接mysql安装MySQL的ODBC驱动MyODBC1、为MySQL建立一个ODBC系统数据源,例如:选择数据库为test ,数据源名称为 myDSN2、建立链接数据库EXEC sp_addlinkedserver  @server = 'MySQLTest', @srvproduct='MySQL', @provider = 'MSDASQL', @datasrc = 'myDSN'GOEXEC sp_addlinkedsrvlogin  @rmtsrvname='MySqlTest',@useself='false',@locallogin='sa',@rmtuser='mysql的用户名',@rmtpassword='mysql的密码'3、查询数据SELECT * FROM OPENQUERY (MySQLTest ,'select * from 表' )4.如果Mysql修改密码后必须重新映射一下EXEC sp_addlinkedsrvlogin(http://topic.csdn.net/u/20090223/14/bd4eaef6-986e-483a-8155-5a563692d922.html)
  相关解决方案