SQL Server 2008链接服务器异类数据源的管理

笔者很喜欢在企业中采用链接服器来解决相关的问题。笔者也建议大家这么做。不过多某些数据库管理员来说,可能链接服务器对他们还是一个新的事物。这不用担心。笔者认为只要从如下几个方面去学习,就能够对链接服务器有一个全面的认识,并顺利在企业中进行部署。

  在SQLServer2008数据库环境中,已经逐步的在利用链接服务器来代替远程服务器的功能。笔者认为,这是以后发展的必然趋势。因为链接服务器不仅能够完成远程服务器的所有功能,而且通过链接服务器还可以管理企业中的异类数据源,提高数据">远程访问的安全性等等。

  一、 了解数据源。

  如上图所示,客户端需要访问数据,这个数据存储的位置或者格式就叫做数据源。但是由于数据存储的格式多种多样,如果访问不同格式的数据,客户端需要采用不同的应用程序,显然会非常的麻烦。为此在客户端与数据源之间,就有了数据库引擎和数据库接口。在SQLServer2008链接服务器中,提供了“OLEDB访问接口”和“OLEDB数据源”接口。一般来说,OLEDB访问接口是管理特定数据源并且与其交互的DLL语句。而OLEDB数据源接口则用来标示可以通过OLEDB访问的特定数据库。在大部分情况下,链接服务器连接的都是数据库。不过其连接的不一定是SQLServer数据库,而还有可能使Oracle数据库等等。同时在一些特定的场合,数据源也可能不是数据库文件,有可能是一个文本文件或者Excle等数字表格文件或者是全文内容搜索的结果。

  所以SQLServer2008链接数据器8630.html">有时候更像是一个数据源文件管理的平台。其可以通各种各样的数据源文件打交道,可以对远程服务器上的数据源文件执行相关的命令。为此企业的信息化应用中,如果包含了多种数据源文件,如即有SQLServer数据库、Oracle数据库,或者早期应用的Access数据库、文本文件等等。有了链接服务器之后,可以免去转换的麻烦。而直接通过链接服务器来访问这些数据源文件。为此笔者更愿意将SQLServer链接服务器当作一个平台,统一来管理各种各样的数据源文件。

  二、 提高链接服务器的访问安全。

  无论采取何种方式来访问数据源文件,安全都是至关重要的。特别是对于一些敏感的数据与行业,如化工、金融企业等等,对于数据访问的安全都提出了比较严格的要求。如上图所示,从客户端到链接服务器,再从链接服务器到数据源文件,中间有很多可以攻击的环节。那么链接服务器有没有提供比较高的安全机制,来保障这个远程访问的安全呢?答案是肯定的。如果没有出色的安全机制,那么即使其最优越,笔者也不会向大家推荐。

  在SQLServer2008中,其提出了一种比较新的安全机制,即登录名映射。如上图所示,当客户端通过链接服务器访问数据源文件时,发送服务器必须提供登录名与密码以辨别自己的身份并进行链接。链接服务器在这个过程中采用了登录名映射的安全机制。所谓链接服务器登陆名映射指的是为特定的链接服务器和本地登陆名建立远程登陆名和远程密码。这说起来比较复杂,不过通过实例的话可以理解的更加清楚。如现在链接服务器需要连接到远程的Access数据库进行相关的操作。在链接之前,管理员需要先通过使用存储过程来添加登录名映射。如链接服务器上由一个用户名admin1,那么可以为为这个用户名建立一个admin2的映射。当用户以本地登录名admin1访问远程数据文件的时候,在网络上传输的用户名是admin2,而不是admin1。虽然这个登录名映射的工作原理比较简单,但是却能够极大的提高链接服务器访问数据的安全性。绝大部分数据库管理员都建议通过这个中登录名映射机制来提高远程访问数据的安全。

时间: 2024-09-20 06:39:45

SQL Server 2008链接服务器异类数据源的管理的相关文章

SQL Server使用链接服务器的5个性能杀手

当使用链接服务器(Linked Servers)时,最昂贵的代价就是网络带宽间大量数据的传输.在正确的服务器书写正确的代码是非常重要的,因为每一个错误都会导致在网络带宽上付出非常昂贵的代价. 下面是使用链接服务器(Linked Servers)时的几个常见错误: 1:使用推送方式而不是拉方式取数 出人意料之外的是,使用链接服务器推送数据比拉取数据慢得多.Linchi Shea写了一篇很好的博客讨论这个. Linchi Shea 使用openquery来说明两者间的差异,但是这个也会发生在使用链接

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

 前言: 本文是对博客http://www.dbnewsfeed.com/2012/09/08/5-performance-killers-when-working-with-linked-servers/的翻译, 如有翻译不对或不好的地方,敬请指出,大家一起学习进步.尊重原创和翻译劳动成果,转载时请注明出处.谢谢!   当 使用链接服务器(Linked Servers)时,最昂贵的代价就是网络带宽间大量数据的传输.在正确的服务器书写正确的代码是非常重要的,因为每一个错误都会导致在网络带宽上付出

SQL Server 远程链接服务器详细配置

原文:SQL Server 远程链接服务器详细配置[转载] http://hi.baidu.com/luxi0194/blog/item/a5c2a9128a705cc6c2fd7803.html 远程链接服务器详细配置--建立连接服务器EXEC sp_addlinkedserver  '远程服务器IP','SQL Server'--标注存储EXEC sp_addlinkedserver@server = 'server', --链接服务器的本地名称.也允许使用实例名称,例如MYSERVER\S

SQL Server的链接服务器(MySQL、Oracle、Ms_sql、Access、SYBASE)

原文:SQL Server的链接服务器(MySQL.Oracle.Ms_sql.Access.SYBASE) 一.使用 Microsoft OLE DB Provider For ODBC 链接MySQL 安装MySQL的ODBC驱动MyODBC 1.为MySQL建立一个ODBC系统数据源,例如:选择数据库为test ,数据源名称为myDSN 2.建立链接数据库 EXEC sp_addlinkedserver @server = 'MySQLTest', @srvproduct='MySQL',

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

原文:[翻译]--SQL Server使用链接服务器的5个性能杀手  前言: 本文是对博客http://www.dbnewsfeed.com/2012/09/08/5-performance-killers-when-working-with-linked-servers/的翻译, 如有翻译不对或不好的地方,敬请指出,大家一起学习进步.尊重原创和翻译劳动成果,转载时请注明出处.谢谢!   当使用链接服务器(Linked Servers)时,最昂贵的代价就是网络带宽间大量数据的传输.在正确的服务器

使用SQL Server 2008进行服务器合并

1.导言 随着公司使用越来越多的应用程序来管理业务流程.提供新的服务.和获得对业务执行情况的观察, 支持这些应用程序所需的应用程序服务器和数据存储服务器的数目显著地增多.在许多公司里,硬件成本 以及部署和维护公司内的多个服务器的费用是主要的财政和后勤预算. 同时,在硬件和软件技术方面的提高意味着现代IT系统可以处理比之前多很多的工作量.这促使将软 件服务合并到较少的物理服务器上,从而使得更多地使用较少的硬件.这降低了购买和维护服务器的相关 成本,并使得可以实现更高效的和更有效的IT基础设施管理.

数据库-Sql server 2005 链接服务器问题

问题描述 Sql server 2005 链接服务器问题 有A,B两台服务器已建立链接, 在B服务器分析器中Select * into #tmpa from [a].xx.dbo.xx 可以执行 update [a].xx.dbo.xx set counter = 1 wehre num in (select num from #tmpa) 也可执行 delete from [a].xx.dbo.xx where num in (select num from #tmpa) 就是删除不行提示以下

Sql Server使用链接服务器远程取数据

server|服务器|链接|数据 由于最近开发的一个查询系统,基本是在其它服务器的,所以在本地服务器设计了中间,用来存从远程服务器取数据!    一种方法是通过,OPENDATASOURCE来远程读取数据! SELECT   *FROM      OPENDATASOURCE(         'SQLOLEDB',         'Data Source=ServerName;User ID=MyUID;Password=MyPass'         ).Northwind.dbo.Cat

如何修改SQL Server 2008数据库服务器名称

在一个虚拟机中安装了SQL Server 2008,然后将该虚拟机文件复制了一个出来,然后还原成另外一个虚拟机,这样就可以同时使用2个虚拟机来做复制的实验了. 要在SQL Server 2008上做数据库复制的实验,需要用到两台服务器,所以需要同时开2个虚拟机(VPC),当然不可能去单独安装2个SQL Server,安装过程太费时了,所以是在一个虚拟机中安装了SQL 2008,然后将该虚拟机文件复制了一个出来,然后还原成另外一个虚拟机,这样就可以同时使用2个虚拟机来做复制的实验了. 先在虚拟机S