Share Memory协议是怎么回事

来源:互联网 发布:网络推广部门组建方案 编辑:程序博客网 时间:2024/04/25 09:04
该篇文章是我于2009年6月10日通过自己编写的工具,批量从位于在博客园的博客站点(http://chenxizhang.cnblogs.com)同步而来。文章中的图片地址仍然是链接到博客园的。特此说明!

陈希章

原文地址:http://www.cnblogs.com/chenxizhang/archive/2008/07/29/1255664.html
原文标题:Share Memory协议是怎么回事
原文发表:2008/7/29 8:13:00

细心的朋友会发现,SQL Server 2005所支持的网络库协议中多了一个Share Memory协议,那么它是用在什么场合的呢?下面是官方文档的一些介绍:


从运行在同一台计算机上的客户端到 Microsoft SQL Server 的连接使用共享内存协议。共享内存没有可配置的属性。始终会先尝试使用共享内存,无法将其从“客户端协议属性”列表中“启用的协议”列表的顶部位置移开。可以禁用共享内存协议,在排除其他某个协议的故障时,这样做很有用。

不能使用共享内存协议来创建别名,但是如果启用了共享内存,然后通过名称连接到数据库引擎,就可以创建共享内存连接。共享内存连接字符串的格式为 lpc:[/instancename]

Shared Memory 是可供使用的最简单协议,没有可配置的设置。由于使用 Shared Memory 协议的客户端仅可以连接到同一台计算机上运行的 SQL Server 实例,因此它对于大多数数据库活动而言是没用的。如果怀疑其他协议配置有误,请使用 Shared Memory 协议进行故障排除。

使用 MDAC 2.8 或早期版本的客户端不能使用 Shared Memory 协议。如果尝试使用,将自动切换为 Named Pipes 协议。

要想知道当前连接用的是什么协议,在SQL Server 2005中可以用这个语句

SELECT net_transport
FROM sys.dm_exec_connections
WHERE session_id = @@SPID;

实际上,虽然SQL Server 2000的时候没有刻意地列出这个协议,本机登陆的时候仍然是用的这个协议

作者:陈希章
出处:http://blog.csdn.net/chen_xizhang
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原创粉丝点击