大多数SQL Server应用访问相同数据库中的对象,但是有时我们会需要跳出这个数据库到相同服务器上的另一个数据库或者另一个SQL Server实例。在这些情况下,我们可以使用数据库服务器以及其它数据库的对象的别名,而不使用实际的名称。本文将说明在SQL Server中使用别名的不同方法。我将介绍在分布对象的物理位置发生改变时,别名是怎样有效地减少对代码或配置文件所需要做的修改的。
首先,我们先看一下服务器级别名。一个SQL Server别名是一个允许为SQL Server实例创建别名的机制。我们可以认为服务器别名是别名与实际的实例名称或SQL Server实例的IP地址之间的映射。 ……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
大多数SQL Server应用访问相同数据库中的对象,但是有时我们会需要跳出这个数据库到相同服务器上的另一个数据库或者另一个SQL Server实例。在这些情况下,我们可以使用数据库服务器以及其它数据库的对象的别名,而不使用实际的名称。本文将说明在SQL Server中使用别名的不同方法。我将介绍在分布对象的物理位置发生改变时,别名是怎样有效地减少对代码或配置文件所需要做的修改的。
首先,我们先看一下服务器级别名。一个SQL Server别名是一个允许为SQL Server实例创建别名的机制。我们可以认为服务器别名是别名与实际的实例名称或SQL Server实例的IP地址之间的映射。
除了名称,我们也可以定义端口号和网络协议。使用别名的数据库连接将使用别名定义中指定的网络协议连接到映射的服务器实例。图-1显示的是一个示例别名——我给SQL Server实例的IP地址设置了一个别名Inventory,还指定了端口号为6379。
图1:一个SQL Server实例的IP地址别名
服务器别名可能在许多不同的场景中带来好处:
如果环境是一个有多个服务器的分布式环境,服务器之间是使用链接服务来互相引用的,那么我们可以使用别名而不是实际的名称来定义链接服务器。将来,如果需要将数据库从一台服务器移到另一台服务器,我们就不需要修改T-SQL代码中的链接服务器名,只需要去修改别名所指向的位置就行了。
我们可以为IP地址创建一个友好的别名。
我们可以强化Named Pipes连接协议而不使用默认的TCP/IP协议。如果我们使用Windows Authentication来连接到另外一个域或通过VPN连接的Internet上的SQL Server,那么这会很有用。当连接返回“Cannot generate SSPI context”错误时,我们创建一个别名然后指定Named Pipes协议,连接就可能成功了。
在高可用环境中将应用连接快速地从主SQL Server重定向到待机的SQL Server。如果主服务器宕机了,我们就不需要在所有应用中修改所有的连接配置。相反,我们所需要做的是将主服务器的别名指向副服务器。如果又需要指回到原来的服务器,我们只需要删除别名或者将服务器指回它自己。
创建一个服务器别名方法是依据计算机安装的客户端工具来决定的。如果是SQL Server 2000客户端工具,那么就使用SQL Client Network Utility并选择“Alias”标签。如果是SQL Server 2005工具,就打开“SQL Server Configuration Manager”,展开“SQL Native Client Configuration”节点找到“Aliases”节点。大多数应用服务器并没有安装SQL Server工具,但是客户端工具已经包含在MDAC安装包中。 我们可以在DOS的命令提示符中执行“cliconfig”来运行它。
作者
翻译
TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。
相关推荐
-
OpenWorld18大会:Ellison宣布数据库的搜寻和破坏任务
在旧金山举行的甲骨文OpenWorld 2018大会中,甲骨文首席技术官(CTO)兼创始人Larry Elli […]
-
云端SQL Server高可用性最佳做法
与内部部署相比,在云端运行SQL Server可为数据库软件用户提供更多的灵活性和可扩展性,也可能更省钱。但云 […]
-
ObjectRocket着力发展Azure MongoDB服务
MongoDB吸引了微软公司的注意力,微软公司计划针对运行于该公司2017年发布的Azure Cosmos D […]
-
绘制数据关系图的利器:SQL Server 图像数据库工具
SQL Server 2017新增了图形数据库功能,你可以使用图结构来表示不同数据元素之间的关系。