最近做项目,需要对两个数据库进行同步操作,所以采用在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】链接服务器的更多相关文章

  1. SQL链接服务器

    最近做项目,需要对两个数据库进行同步操作,所以采用在Server SQL中建立链接服务器方式实现. 链接服务器,可以直接访问/操作其他服务器上的数据库表. 1.连接SQL Server链接服务器 EX ...

  2. SQL链接服务器查询-OPENQUERY的使用

    OpenQuery: 用途:与其他Server交互的技术,通过它能够直接访问其他数据库资源.可以跨平台连接,包括Oracle   --创建链接服务器 exec sp_addlinkedserver ' ...

  3. 建立SQL链接服务器

    访问链接服务器的格式:select * from [IPMLBZ].[数据库].[dbo].WEB_ItemInfo 有一个最简单的方法就是直接鼠标新建,这样是以ip为开头的,也可以通过下面的代码进行 ...

  4. 链接服务器"(null)"的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 返回了消息 "未指定的错误"。[手稿]

    消息 7302,级别 16,状态 1,第 1 行 无法创建链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.JET.OLEDB.4.0&qu ...

  5. Sqlserver通过链接服务器访问Oracle

    工作中遇到的情况,win 7 64位操作系统的就安装64位的oracle 客户端,然后重启sql service服务后再创建sql 链接服务器.关于如何创建链接服务器请查看下面的大神的链接: http ...

  6. SQL跨服务器查询数据库

    有时候一个项目需要用到两个数据库或多个数据库而且这些数据库在不同的服务器上时,就需要通过跨服务器查找数据 在A服务器的数据库a查询服务器B的数据库b 的bb表 假如服务器B的IP地址为:10.0.22 ...

  7. SQL Server 链接服务器的安全

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 安全设置(Security Settings) 实现效果:用户A能看见能使用,B用户不能看见这 ...

  8. SQL SERVER使用ODBC 驱动建立的链接服务器调用存储过程时参数不能为NULL值

    我们知道SQL SERVER建立链接服务器(Linked Server)可以选择的驱动程序非常多,最近发现使用ODBC 的 Microsoft OLE DB 驱动程序建立的链接服务器(Linked S ...

  9. SQL SERVER 2000通过链接服务器发送邮件出现错误

    案例环境: 服务器A系统: Windows Server 2000 数据库版本 : Microsoft SQL Server  2000 - 8.00.2282 (Intel X86) 服务器B系统: ...

  10. [翻译]——SQL Server使用链接服务器的5个性能杀手

    前言: 本文是对博客http://www.dbnewsfeed.com/2012/09/08/5-performance-killers-when-working-with-linked-server ...

随机推荐

  1. java ee项目用gradle依赖打包

    plugins { id 'java' id 'eclipse' id 'idea' id 'application' } //mainClassName = ConnectionElasticSea ...

  2. 用 Flask 来写个轻博客 (28) — 使用 Flask-Assets 压缩 CSS/JS 提升网页加载速度

    Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 扩展阅读 Flask-Assets 将 Flask-Assets 应用 ...

  3. CATiledLayer显示超大图片的解决方案

    先对图片进行了裁剪 -> 很多小图片, 然后再根据显示 进行绘制 - (void)viewDidLoad { [super viewDidLoad]; [self cutImageAndSave ...

  4. java反射(四)--反射与简单java类

    一.传统简单java类 简单的java类主要是由属性所组成,并且提供有相应的setter以及getter的处理方法,同时简单java类最大的特征就是通过对象保存相应的类的属性内容,但是如果使用传统的简 ...

  5. centos 7 设置开机启动脚本

    vi /etc/rc.d/rc.local 在末尾追加 sh脚本 sh脚本要提前赋予执行权限 下面是测试,开机同步北京时间 [root@commonTest bin]# vi /usr/local/b ...

  6. Logstash,Fluentd, Logtail对比伤害

    摘要: 针对主流日志采集客户端(Logstash,Fluentd,以及日志服务客户端Logtail)进行功能.性能和稳定性测评 日志收集的场景 DT时代,数以亿万计的服务器.移动终端.网络设备每天产生 ...

  7. redis-3.0.0安装

    redis-3.0.0安装 前言 redis是常用的no-sql数据库,常用于缓存数据,同时,他也可以持久化数据.他是C语言开发的,所以安装的时候需要编译. 单机版redis yum install ...

  8. 64.Find the Duplicate Number(发现重复数字)

    Level:   Medium 题目描述: Given an array nums containing n + 1 integers where each integer is between 1 ...

  9. 用C实现基本的输出参数个数与参数内容

    开发环境为 centos7 和 gcc4.8.5,代码如下: /** * 用C实现基本的输出参数个数与参数内容 */ #include <stdio.h> int main(int arg ...

  10. 第八组Postmortem事后分析

    第八组Postmortem事后分析 一.团队成员总结的改进和教训 隆晋威:Beta阶段完善架构设计,分工更加明确,文档更丰富,交流带来开销减少.Alpha技术选型不固定,分工混乱,没有方便的测试引擎, ...