无法使用我的 Windows 帐户启动 SqlLocalDB 实例

Nim*_*oud 14 sql-server sql-server-2012 sql-server-localdb

我是管理员,只需运行以下命令:

 sqllocaldb start v11.0
Run Code Online (Sandbox Code Playgroud)

结果:

 Start of LocalDB instance "v11.0" failed because of the following error:
 Error occurred during LocalDB instance startup: SQL Server process failed to sta
 rt.
Run Code Online (Sandbox Code Playgroud)

事件查看器日志事件 ID:528

Windows API 调用 WaitForMultipleObjects 返回错误代码:575。Windows 系统错误消息是:{Application Error} 应用程序无法正确启动 (0x%lx)。单击确定关闭应用程序。在第 3621 行报告。

我尝试了另一个(用户和管理员)帐户,它们没有问题。

我卸载并重新安装了 2012 版的 SQLLocalDB.msi,但我没有运气。你有什么想法和解决办法吗?

Aar*_*and 14

检查错误日志,通常在文件夹下%localappdata%\Microsoft\Microsoft SQL Server Local DB\Instances\v11.0会给你很大的提示。

重新登录作为管理员帐户(未管理员),并启动一个命令提示与Run As Administrator。然后运行这个:

sqllocaldb share v11.0 MyInstance
Run Code Online (Sandbox Code Playgroud)

如果这是一个目标,您可能希望在此实例上明确添加您的 Windows 帐户作为系统管理员。所以:

sqllocaldb start MyInstance
Run Code Online (Sandbox Code Playgroud)

然后连接SQLCMD,Management Studio,你有什么,运行:

CREATE LOGIN [Domain\Username] FROM WINDOWS;
EXEC sp_addsrvrolemember N'Domain\Username', N'sysadmin';
Run Code Online (Sandbox Code Playgroud)

现在以您的 Windows 帐户重新登录,您应该能够使用以下命令启动此实例:

sqllocaldb start MyInstance
Run Code Online (Sandbox Code Playgroud)

(根据您的操作系统和您切换帐户的方式,它可能已经启动。)

然后Domain\Username应该能够使用 SQLCMD、SSMS 等进行连接(localdb)\.\MyInstance


Nim*_*oud 7

我注销然后以另一个管理员身份登录并重命名我的用户配置文件文件夹的名称。我在 Windows 7 中切换到我的帐户。有一个新创建的 TEMP 文件夹作为我的用户配置文件文件夹。我比较了之前和之后的文件夹结构,如图所示。加; LocalDB 实例成功启动。

localdb2.png

我注销并将我的用户名重命名为原始用户名。再次登录并跳入该文件夹:

C:\Users\MYUSERNAME\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\v11.0

并看到了错误日志;拒绝访问!

http://pastebin.com/ASeJGqpw

解决方案: 只需删除v11.0文件夹中的所有文件。授予对v11.0文件夹的写入权限。如果您无法创建另一个实例,请授予对Instances文件夹的写权限。