【SQL】链接服务器
最近做项目,需要对两个数据库进行同步操作,所以采用在Server SQL中建立链接服务器方式实现。
链接服务器,可以直接访问/操作其他服务器上的数据库表。
1、连接SQL Server链接服务器
EXEC sp_addlinkedserver
@server='Other',--被访问的服务器别名
@srvproduct='',
@provider='SQLOLEDB', ----固定值
@datasrc='192.168.4.69' --要访问的服务器
EXEC sp_addlinkedsrvlogin
'Other', --被访问的服务器别名(与上面的@server一样)
'false',NULL,'sa', --帐号
'' --密码
这样就可以直接访问 192.168.4.69服务器上的数据库(sa有权限的数据库)
例如: SELECT * FROM Other.Test.dbo.User;
(SELECT * FROM 服务器别名.数据库.dbo.表名)
2、链接mysql数据库
安装mysqlconnector/ODBC
1)注意mysql版本(非操作系统版本)为32bit或64bit,选择相应安装包,版本问题可能造成错误。
2)若出现以下错误,请安装相对应版本的Microsoft Visual C++ 2010 Redistributable Package。

建立odbc数据源
步骤:1)若本地操作系统和mysql均为32bit或64bit,操作如下:
控制面板—>管理工具—>数据源ODBC—>系统DSN

若操作系统为64bit,mysql为32位,操作如下:
若在控制面板—>管理工具—>数据源ODBC—>系统DSN—> 【添加】中找不到MYSQLDriver,则在C:\Windows\SysWOW64 路径下找到odbcad32.exe文件,双击,选择系统DSN。

2)添加数据源


配置项说明:
Data Source Name:数据源名称(建立链接数据库需要该参数)
Description:简述
TCP/IP Server 远程数据库IP
User:远程数据库用户名
Password:远程数据库用户密码
DataBase: 数据库名
建立链接服务器:
EXEC sp_addlinkedserver
@server='JIRA',--被访问的服务器别名
@srvproduct='MySQL',
@provider='MSDASQL', --链接MYSQL参数(固定值)
@datasrc='JIRA' --要访问的数据源名称(与配置的ODBC数据源名称一致)
EXEC sp_addlinkedsrvlogin
'JIRA', --被访问的服务器别名(同上)
'false',
'MES', --本地数据库用户名
'root', --远程数据库帐号
'123456' --远程数据库密码
验证数据库是否链接成功
select * from openquery(JIRA,'SELECT * FROM project;')
若出现“mysql ODBC 驱动程序和应用程序之间的体系结构不匹配”的错误提示,则为ODBC驱动版本与MYSQL版本不一致
3、链接Oracle数据库
【SQL】链接服务器的更多相关文章
- SQL链接服务器
最近做项目,需要对两个数据库进行同步操作,所以采用在Server SQL中建立链接服务器方式实现. 链接服务器,可以直接访问/操作其他服务器上的数据库表. 1.连接SQL Server链接服务器 EX ...
- SQL链接服务器查询-OPENQUERY的使用
OpenQuery: 用途:与其他Server交互的技术,通过它能够直接访问其他数据库资源.可以跨平台连接,包括Oracle --创建链接服务器 exec sp_addlinkedserver ' ...
- 建立SQL链接服务器
访问链接服务器的格式:select * from [IPMLBZ].[数据库].[dbo].WEB_ItemInfo 有一个最简单的方法就是直接鼠标新建,这样是以ip为开头的,也可以通过下面的代码进行 ...
- 链接服务器"(null)"的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 返回了消息 "未指定的错误"。[手稿]
消息 7302,级别 16,状态 1,第 1 行 无法创建链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.JET.OLEDB.4.0&qu ...
- Sqlserver通过链接服务器访问Oracle
工作中遇到的情况,win 7 64位操作系统的就安装64位的oracle 客户端,然后重启sql service服务后再创建sql 链接服务器.关于如何创建链接服务器请查看下面的大神的链接: http ...
- SQL跨服务器查询数据库
有时候一个项目需要用到两个数据库或多个数据库而且这些数据库在不同的服务器上时,就需要通过跨服务器查找数据 在A服务器的数据库a查询服务器B的数据库b 的bb表 假如服务器B的IP地址为:10.0.22 ...
- SQL Server 链接服务器的安全
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 安全设置(Security Settings) 实现效果:用户A能看见能使用,B用户不能看见这 ...
- SQL SERVER使用ODBC 驱动建立的链接服务器调用存储过程时参数不能为NULL值
我们知道SQL SERVER建立链接服务器(Linked Server)可以选择的驱动程序非常多,最近发现使用ODBC 的 Microsoft OLE DB 驱动程序建立的链接服务器(Linked S ...
- SQL SERVER 2000通过链接服务器发送邮件出现错误
案例环境: 服务器A系统: Windows Server 2000 数据库版本 : Microsoft SQL Server 2000 - 8.00.2282 (Intel X86) 服务器B系统: ...
- [翻译]——SQL Server使用链接服务器的5个性能杀手
前言: 本文是对博客http://www.dbnewsfeed.com/2012/09/08/5-performance-killers-when-working-with-linked-server ...
随机推荐
- ubuntu下node.js 环境搭建
由于使用gulp.js来对前端项目进行管理,所以搭建了node.js的环境 首先, 需要安装node, npm 去官网下载安装包,解压后放到你的安装的目录.在这里我的是/opt/node-v6.11. ...
- spring controller使用了@ResponseBody却返回xml
使用ajax请求数据 $.ajax({ url:message.rootPath +"/sendMessage.xhtml", type:"post", dat ...
- 小程序中封装base64
function Base64() { // private property var _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmn ...
- 仿移动端触摸滑动插件swiper,的简单实现
/** * @author lyj * @Date 2016-02-04 * @Method 滑动方法 针对一个大容器内部的容器做滑动封装 * @param * args args.swipeDo ...
- Linux对用户态的动态内存管理
Linux对内核态内存分配请求与用户态内存分配请求处理上分别对待 Linux本身信任自己,因此Linux内核请求分配多少内存,就会马上分配相同数量的内存出来. 但内核本身不相信应用程序,而且通常应用程 ...
- 报警插件Alertmanager 安装与使用
Alertmanager是一个独立的告警模块,接收Prometheus等客户端发来的警报,之后通过分组.删除重复等处理,并将它们通过路由发送给正确的接收器:告警方式可以按照不同的规则发送给不同的模块负 ...
- KMP算法——字符匹配
暴力匹配: 假设现在我们面临这样一个问题:有一个文本串S,和一个模式串P,现在要查找P在S中的位置,怎么查找呢? 如果用暴力匹配的思路,并假设现在文本串S匹配到 i 位置,模式串P匹配到 j 位置, ...
- python中深copy,浅copy与赋值语句的区别
以下详细讲解:python深复制,浅复制与赋值语句的区别 1. '='赋值语句,常规复制只是将另一个变量名关联到了列表,并不进行副本复制,实例如下: var1=[12,35,67,91,101]var ...
- C的基本数据类型小结
代码 /** * 基本数据类型 */ #include <stdio.h> #include <limits.h> /* 定义 32 位时的 long 与 unsigned l ...
- javascript基础六(事件对象)
1.事件驱动 js控制页面的行为是由事件驱动的. 什么是事件?(怎么发生的) 事件就是js侦测到用户的操作或是页面上的一些行为 事件源(发生在谁身上) ...