SQL SERVER 创建远程数据库链接 mysql oracle sqlserver
遇到的坑
在连接Oracle时,因为服务器为10g 32位版本,然后在本地安装了32为10g客户端,然后一直报错【7302、7303】,后来下载了12c 64位版本,安装成功后,问题解决
原因:mssql和oracle只能进行相同位数版本的连接
由于连接mysql时直接用的odbc连接,所以未碰到版本冲突,如有冲突请告诉我一下哈
/* MSSQL --创建远程链接 EXEC sp_addlinkedserver @server='PACS_LINK', --被访问的服务器别名 @srvproduct='', --SqlServer默认不需要写,或ORACLE @provider='SQLOLEDB', --不同的库都是不一样的,OLE DB字符 @datasrc='59.110.5.215,51800'--要访问的服务器 GO EXEC sp_addlinkedsrvlogin @rmtsrvname='PACS_LINK', --被访问的服务器别名 @useself='false', --固定这么写 @locallogin='sa', --本地操作应户名 @rmtuser='testpass', --被访问的服务器用户名 @rmtpassword='1qaz@WSX'--被访问的服务器用密码 GO ----//删除连接服务器 --EXEC sp_dropserver "PACS_LINK" -- select * from PACS_LINK.[NewNanNingSystemDB].[dbo].[V_DeviceList] */ /* MYSQL --建立数据库链接服务器 EXEC sp_addlinkedserver @server =N'LIS_LINK', --要创建的链接服务器别名 @srvproduct=N'MYSQL', --产品名称 @provider=N'MSDASQL', --OLE DB 驱动名称(固定) @datasrc=N'mysql' --数据源(需要修改,格式 ip:端口/SERVICE_NAME) GO EXEC sp_addlinkedsrvlogin @rmtsrvname='LIS_LINK', --已建立的链接服务器名 @useself='false', -- 固定 * @locallogin= NULL, --为每个登陆SQL SERVER的用户使用此链接服务器,则写用户名*固定 @rmtuser='root', --帐号(需要修改) @rmtpassword='inteall' --密码(需要修改) GO ----//删除连接服务器 -- EXEC sp_dropserver "LIS_LINK" -- SELECT * FROM OPENQUERY([LIS_LINK], 'SELECT * FROM lisinterface.temp ') */ /* ORACLE --建立数据库链接服务器 EXEC sp_addlinkedserver @server =N'HIS_LINK', --要创建的链接服务器别名 @srvproduct=N'ORACLE', --产品名称(固定) @provider=N'OraOLEDB.Oracle', --OLE DB 驱动名称(固定) @datasrc=N'ORCL1' --数据源(需要修改,格式 ip:端口/SERVICE_NAME) GO EXEC sp_addlinkedsrvlogin 'HIS_LINK', --已建立的链接服务器名 'false', -- 固定 * NULL, --为每个登陆SQL SERVER的用户使用此链接服务器,则写用户名*固定 'hisdata', --帐号(oracle)(需要修改) 'inteall2012' --密码(oracle)(需要修改) GO ----//删除连接服务器 -- EXEC sp_dropserver "HIS_LINK" -- SELECT * FROM OPENQUERY([HIS_LINK], 'SELECT * FROM V_INTEFACECOSEDETAIL ') --select * from openquery(HIS_LINK,'select * from temp') */
有错误的请多多指教,共同进步(๑•ᴗ•๑)
By听雨的人
By听雨的人