在SqlLocalDB中创建命名实例而不是使用默认的v11.0实例有什么好处?在我的场景中,我使用连接字符串中的AttachDbFileName选项附加数据库文件。
帮助问题:是否可以为不同的LocalDB实例设置不同的设置?如果是这样,那是什么样的设置(我读过你不能改变,例如整理)?
答案 0 :(得分:2)
如果您希望在同一台计算机上运行多个SQL Server实例,则必须对它们进行命名以区分它们。除此之外,就正常使用情况而言,没有真正的“好处”。
如果您需要不同的服务器配置,甚至不同的版本,则多个实例非常有用。例如,假设您有一个为Sql 2008制作的数据库,并希望为Sql 2012的新应用程序创建一个新数据库。您可以在同一台计算机上托管这两个数据库,并使用最高级版本的功能,同时保持旧版本的工作原理。
答案 1 :(得分:2)
请注意,您只能安装一个默认实例,但可以安装多个命名实例。除非您特别需要在同一主机上安装多个SQL Server实例,例如同时运行不同版本,群集或其他隔离要求,否则最好只为每个主机安装默认实例。必须命名任何其他实例(显然是出于区别原因)。
默认实例和命名实例之间的根本区别主要是网络连接问题。客户端只能使用众所周知的1433端口上的主机名连接到默认实例。要连接到命名实例,客户端指定主机和实例名称(例如“MyHost \ My_Instance”),SQL Server Browser服务返回命名实例正在侦听的端口。
在现实世界中,拥有多个实例的原因因组织而异。以下是一些最常见的原因:
应用程序功能或负载测试
服务器整合
内部托管\部门服务器共享
安全强>
<强>演示强>
来源:
很高兴阅读:
答案 2 :(得分:1)
我可以看到两种可能的好处,性能和控制配置的能力。
LocalDB受限于与其他SQL Express实例相同的方式,每个实例应用CPU和RAM限制。如果您的应用程序使用自己的实例,它将自行获取所有内容,并且不需要与其他应用程序共享。使用默认实例意味着您的应用程序必须使用默认实例与其他应用程序共享。
如果您需要进行任何可能破坏其他应用程序的特殊实例范围配置,您也可以使用命名实例。或者,如果您担心某些其他行为不当的应用程序可能会更改破坏您的应用程序的默认实例,并让您的客户责备您。两种方式都有效: - )