如何解决 SQL Server 2008 R2 安装过程中“指定的帐户已存在”错误

RAY*_*RAY 18 sql-server sql-server-2008-r2 installation

我最近在新的开发机器上安装 Visual Studio 2012 和 SQL Server 2008 R2 时遇到了问题。我的安装顺序是 Visual Studio 2012 然后安装 SQL Server 2008 R2。

SQL Server 安装过程中出现错误:

指定的帐户已存在。

我花了一天的时间试图解决这个问题。

RAY*_*RAY 7

首先,搜索安装日志。在我的例子中,它位于以下路径下:

C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\*.*
Run Code Online (Sandbox Code Playgroud)

在该日志中,我发现了以下条目:

2015-08-07 11:16:50 Slp: Sco: Attempting to open registry subkey 
2015-08-07 11:16:50 Slp: Sco: Attempting to open registry subkey SOFTWARE\Microsoft\VisualStudio\9.0
2015-08-07 11:16:50 Slp: Sco: Attempting to get registry value InstallDir
2015-08-07 11:16:50 Slp: Target package: "D:\shared\~~~~~\sqlncli.msi"
2015-08-07 11:16:51 Slp: MSI Error: 1316 The specified account already exists.
Run Code Online (Sandbox Code Playgroud)

然后我找到了该文件sqlncli.msi并打开了一个命令提示符来执行这个命令:

msiexec /i "d:\[Your sqlncli.msi path]
Run Code Online (Sandbox Code Playgroud)

然后我卸载了 SQL Server Native Client 并再次运行 SQL Server 的安装,成功。

  • 只是说当我使用 SQL Management Studio 2014 遇到此错误时,这对我有用。出于某种原因,我不得不卸载 SQL Native Client 2012... (4认同)

小智 6

关于 SQL Native Client 是问题所在的指示——错误实际上是在尝试安装较新的 SQL Native Client 时发生的。解决方案似乎是:转到添加/删除程序,然后删除旧的 SQL Native Client,然后重试。无需中止安装。

删除旧的 SQL Native Client 后,安装似乎没有任何问题。


小智 5

为了完整性:当原始 msi 包具有不同的名称时,也会发生这种情况。

如果您安装了 myproductV1.msi,然后尝试使用

msiexec /fvomus myproductV1.msi
Run Code Online (Sandbox Code Playgroud)

它按预期工作。但是当使用

msiexec /fvomus myproductV3.msi
Run Code Online (Sandbox Code Playgroud)

它因上述错误而失败。假设只有文件名改变。内容(尤其是所有 GUIDS)保持不变