如何修复 MSSQLLocalDB?
How to fix MSSQLLocalDB?
在我的机器上 MSSQLLocalDB 已损坏:
PS C:\WINDOWS\system32> sqllocaldb i
MSSQLLocalDB
Projects
ProjectsV12
v11.0
PS C:\WINDOWS\system32> sqllocaldb i mssqllocaldb
The required LocalDB version "0.0" is not installed.
PS C:\WINDOWS\system32>
除了重新安装 Visual Studio / Sql Server / Sql Express 之外,我还能做些什么来修复它吗?
我应该提到,任何依赖于 LocalDb 的 Visual Studio 功能都因此而无法工作,例如 CodeMaps
我最终做了以下事情。请注意,我确定这不是执行此操作的正确方法,而是一种混乱的技巧。它让我的 CodeMaps 再次工作,所以我很高兴。
我删除了mssqllocaldb
sqllocaldb d mssqllocaldb
系统不让我重新创建所以我又创建了一个:
sqllocaldb с mssqllocaldb1
我去了 "C:\Users\[username]\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\"
并备份了 MSSQLLocalDB
文件夹。然后我将 MSSQLLocalDB1
文件夹复制到 MSSQLLocalDB
.
在注册表中,我在 HKCU\Software\Microsoft\Microsoft SQL Server\UserInstances\
下找到了新实例并更改了 DataDirectory
值以反映新路径,即以 MSSQLLocalDB
而不是 MSSQLLocalDB1
结尾.
在那之后我能够成功启动 MSSQLLocalDB
并且 CodeMaps 工作:
PS C:\WINDOWS\system32> sqllocaldb s mssqllocaldb
LocalDB instance "MSSQLLocalDB" started.
如果您刚刚安装了 LocalDB 并且尚未启动实例,则可能会发生这种情况。我不确定重新启动是否会为我重新启动它(我想它会),但以下工作不需要:
C:\Users\sweaver>sqllocaldb.exe s MSSQLLocalDB
LocalDB instance "MSSQLLocalDB" started.
这应该是您所需要的全部 - 但这是我在此过程中使用的完整诊断步骤。
这是在安装新版本的 LocalDB (2014) 之前
C:\Users\sweaver>sqllocaldb.exe i
v11.0
之后
C:\Users\sweaver>sqllocaldb.exe i
MSSQLLocalDB
v11.0
然后我立即得到这个错误
C:\Users\sweaver>sqllocaldb.exe i MSSQLLocalDB
The required LocalDB version "0.0" is not installed.
奇怪!版本 11 怎么样 - 没关系
C:\Users\sweaver>sqllocaldb.exe i v11.0
Name: v11.0
Version: 11.0.5343.0
Shared name:
Owner: RR2014\sweaver
Auto-create: Yes
State: Running
Last start time: 3/10/2016 3:00:29 PM
Instance pipe name: np:\.\pipe\LOCALDB#60C1AC49\tsql\query
这是版本
C:\Users\sweaver>sqllocaldb.exe v
Microsoft SQL Server 2012 (11.0.5343.0)
Microsoft SQL Server 2014 (12.0.2000.8)
让我们开始吧
C:\Users\sweaver>sqllocaldb.exe s MSSQLLocalDB
LocalDB instance "MSSQLLocalDB" started.
然后再试一次...
C:\Users\sweaver>sqllocaldb.exe i MSSQLLocalDB
Name: MSSQLLocalDB
Version: 12.0.2000.8
Shared name:
Owner: RR2014\sweaver
Auto-create: Yes
State: Running
Last start time: 3/10/2016 3:10:55 PM
Instance pipe name: np:\.\pipe\LOCALDB#1D3F49F3\tsql\query
呸!那很简单!
我通过删除文件夹和注册码解决了这个问题。然后是安装。
删除文件夹
C:\Users\username\AppData\Local\Microsoft\Microsoft SQL 服务器本地 DB\Instances\MSSQLLocalDB
删除含有MSSQLLocalDB之类的注册表项
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Microsoft SQL Server\UserInstances{B0A12082-AC5B-4E05-A0C9-ABFB6816EE16}
运行 来自 cmd
C:>sqllocaldb c MSSQLLocalDB
使用版本 13.0.2151.0 创建的 LocalDB 实例 "MSSQLLocalDB"。
我刚刚将 HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\UserInstances\
下的注册表项 GUID 更新为对我有用的 ParentInstance
的正确值。当您升级到更高版本时,通常会发生这种情况。我必须将 ParentInstance 值从 MSSQL12E.LOCALDB
更改为 MSSQL13E.LOCALDB
在我的机器上 MSSQLLocalDB 已损坏:
PS C:\WINDOWS\system32> sqllocaldb i
MSSQLLocalDB
Projects
ProjectsV12
v11.0
PS C:\WINDOWS\system32> sqllocaldb i mssqllocaldb
The required LocalDB version "0.0" is not installed.
PS C:\WINDOWS\system32>
除了重新安装 Visual Studio / Sql Server / Sql Express 之外,我还能做些什么来修复它吗?
我应该提到,任何依赖于 LocalDb 的 Visual Studio 功能都因此而无法工作,例如 CodeMaps
我最终做了以下事情。请注意,我确定这不是执行此操作的正确方法,而是一种混乱的技巧。它让我的 CodeMaps 再次工作,所以我很高兴。
我删除了mssqllocaldb
sqllocaldb d mssqllocaldb
系统不让我重新创建所以我又创建了一个:
sqllocaldb с mssqllocaldb1
我去了 "C:\Users\[username]\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\"
并备份了 MSSQLLocalDB
文件夹。然后我将 MSSQLLocalDB1
文件夹复制到 MSSQLLocalDB
.
在注册表中,我在 HKCU\Software\Microsoft\Microsoft SQL Server\UserInstances\
下找到了新实例并更改了 DataDirectory
值以反映新路径,即以 MSSQLLocalDB
而不是 MSSQLLocalDB1
结尾.
在那之后我能够成功启动 MSSQLLocalDB
并且 CodeMaps 工作:
PS C:\WINDOWS\system32> sqllocaldb s mssqllocaldb
LocalDB instance "MSSQLLocalDB" started.
如果您刚刚安装了 LocalDB 并且尚未启动实例,则可能会发生这种情况。我不确定重新启动是否会为我重新启动它(我想它会),但以下工作不需要:
C:\Users\sweaver>sqllocaldb.exe s MSSQLLocalDB
LocalDB instance "MSSQLLocalDB" started.
这应该是您所需要的全部 - 但这是我在此过程中使用的完整诊断步骤。
这是在安装新版本的 LocalDB (2014) 之前
C:\Users\sweaver>sqllocaldb.exe i
v11.0
之后
C:\Users\sweaver>sqllocaldb.exe i
MSSQLLocalDB
v11.0
然后我立即得到这个错误
C:\Users\sweaver>sqllocaldb.exe i MSSQLLocalDB
The required LocalDB version "0.0" is not installed.
奇怪!版本 11 怎么样 - 没关系
C:\Users\sweaver>sqllocaldb.exe i v11.0
Name: v11.0
Version: 11.0.5343.0
Shared name:
Owner: RR2014\sweaver
Auto-create: Yes
State: Running
Last start time: 3/10/2016 3:00:29 PM
Instance pipe name: np:\.\pipe\LOCALDB#60C1AC49\tsql\query
这是版本
C:\Users\sweaver>sqllocaldb.exe v
Microsoft SQL Server 2012 (11.0.5343.0)
Microsoft SQL Server 2014 (12.0.2000.8)
让我们开始吧
C:\Users\sweaver>sqllocaldb.exe s MSSQLLocalDB
LocalDB instance "MSSQLLocalDB" started.
然后再试一次...
C:\Users\sweaver>sqllocaldb.exe i MSSQLLocalDB
Name: MSSQLLocalDB
Version: 12.0.2000.8
Shared name:
Owner: RR2014\sweaver
Auto-create: Yes
State: Running
Last start time: 3/10/2016 3:10:55 PM
Instance pipe name: np:\.\pipe\LOCALDB#1D3F49F3\tsql\query
呸!那很简单!
我通过删除文件夹和注册码解决了这个问题。然后是安装。
删除文件夹
C:\Users\username\AppData\Local\Microsoft\Microsoft SQL 服务器本地 DB\Instances\MSSQLLocalDB
删除含有MSSQLLocalDB之类的注册表项 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Microsoft SQL Server\UserInstances{B0A12082-AC5B-4E05-A0C9-ABFB6816EE16}
运行 来自 cmd
C:>sqllocaldb c MSSQLLocalDB
使用版本 13.0.2151.0 创建的 LocalDB 实例 "MSSQLLocalDB"。
我刚刚将 HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\UserInstances\
下的注册表项 GUID 更新为对我有用的 ParentInstance
的正确值。当您升级到更高版本时,通常会发生这种情况。我必须将 ParentInstance 值从 MSSQL12E.LOCALDB
更改为 MSSQL13E.LOCALDB