在SQL 2008 R2中redirect别名的问题

我正在和一个在不同地方安装SQL实例的开发团队合作。 为了让我们的本地机器有一个configuration文件(而不是每个机器都有一个configuration文件),我们试图处理安装了实例名称的SQL,没有实例名称等。

(本地)\ SQLEXPRESS

(本地)\

(本地)\ PERSONNAME

我看了这个指南来设置别名redirect,但是当我们创build相同的别名时,说“MyOldServer”,我使用Windows身份validation连接到一个不受信任的域时出错。

重新安装SQL到所有这些机器上相同的地方? 我们怎样才能使它们都指向相同的名称(最好(本地),但我不在乎任何方式。

编辑:我的连接string(工作)

<add name="masterDb" connectionString="integrated security=true;Data Source=(local);Database=masterDb" /> 

同事的连接string(也在他们的本地机器上工作)

 <add name="masterDb" connectionString="integrated security=true;Data Source=(local)\local;Database=masterDb" /> 

我们想使用其中一个,所以我们有一个本地configuration签入源。 我没有改变我们的连接string…但我希望我们有相同的连接string,如果可能的话不安装SQL。 我们正在加载更多的开发人员,让他们都重新安装SQL来符合将是繁琐的。

别名configuration(我的机器):

别名:TestAlias端口号:空白Portocol:TCP / IP服务器:localhost

如果我将TestAlias添加到我的主机文件,并尝试连接(使用SQLconfigurationpipe理器)到服务器名称:testalias和Windows身份validation,我得到“login失败。login来自不受信任的域,不能用于Windows身份validation”

首先,确保您的计算机上正在运行SQL Browser服务。 这是别名工作所必需的。

其次,如果您处于64位环境中,请确保您将别名添加到32位和64位SQL Native Clientconfiguration中。 SSMS使用32位客户端。

只要您在别名configuration中使用的目标服务器可由客户端parsing,则不需要进行dns或主机文件更改。 如果使用localhost作为别名的服务器不工作,请尝试使用(local)代替(尽pipelocalhost应该可以正常工作)。

注意,如果你使用像rake,psake,nant等构build自动化工具,那么你可以设置构build文件,从基于本地configuration设置的模板为你生成app.config / web.config。 将本地设置文件的模板与其他环境(生产,QS,临时等)的设置文件一起检入到源代码pipe理中。 然后由本地开发人员来维护其设置文件。 当他们准备testing时,他们运行生成configuration文件的版本。 configuration模板存储在源代码控制中,而不是实际的configuration文件本身。 然后,您可以使用自动构build/持续集成服务器(如TeamCity和CruiseControl.NET)为不同的环境生成构build版本。 如果你不这样做,这是你可能想要看的东西。 我提到的所有构build工具都是免费和开源的。 CruiseControl.NET是免费和开源的。 TeamCity是JetBrains的商业产品,但是对于较小的构build环境,它有一个免费的选项。