多个实例sql server的含义

时间:2013-12-23 22:23:33

标签: sql-server sql-server-2012

我是SQL和SQL服务器的新手,我正在使用book来构建我的知识。在本书的早期部分,作者在下面的段落。我对下面的 粗体和斜体 中的句子感到困惑。

在给定服务器上运行多个SQL Server实例的目的是什么?看来SQL服务器是一个非常昂贵的软件,在这种情况下,不安装多个实例是一项代价高昂的任务吗?

  

数据库引擎是SQL Server组件的核心。引擎作为计算机上的服务运行,通常称为SQL Server实例。 您可以在给定服务器上运行多个SQL Server实例。 当您连接到SQL Server时,该实例是连接的目标。连接应用程序后,它会将Transact-SQL(T-SQL)语句发送到实例。返回的实例将数据发送回客户端。连接内部是一个安全层,用于验证数据库管理员(DBA)指定的数据访问权限。数据库引擎使您能够利用所有其他组件的全部功能,例如访问,存储和保护数据。

1 个答案:

答案 0 :(得分:5)

您可能希望运行SQL Server的各种版本,例如2008,2008和2012同时在给定机器上同时进行。如果你是顾问和您的客户使用不同版本的SQL Server,您需要能够从他们那里获得备份,做一些工作,然后重新发送数据库,您必须使用与客户端相同的版本。备份不是向后兼容的,例如如果您的客户使用2005,您可以将他的2005备份恢复到2012服务器,但是不能将数据返回给客户端(因为备份 NOT 向后兼容 - 您无法恢复2005服务器上的2012备份。)

或者您可能希望为例如运行单独的实例在不同的实例中(在相互隔离的情况下)在相同的物理服务器机器上进行开发和测试。这是将SQL Server的两个(或更多)“世界”(环境)彼此分开的好方法;您可能拥有所有相同的数据库 - 但一旦进入“开发”环境(针对您的开发团队,正在进行中),以及第二次进入质量保证或测试团队。如果你有两个完全独立的实例,就像在一台机器上有两个(或更多)服务器一样。

单个物理计算机上的多个实例是一个很好的方法来建立单独的环境 - 基于您可能需要支持的SQL Server的版本(和版本),但也可以实例的使用条款 - 开发与测试与演示与其他你可能拥有的东西。

实例受到很好的保护,互不干扰 - 每个实例都有自己的数据库,登录,安全等。