我无法使用SQL Server Management Studio连接到SQL Server 2008 Express的本地实例。
我相信这个问题与我对连接协议的改变有关。 在发生错误之前,我启用了共享内存并禁用了命名pipe道和TCP / IP。 然后,我启用命名pipe道和TCP / IP,这是当我开始遇到问题。
当我尝试连接到服务器与SSMS(与我的SQL服务器的系统pipe理员login或与Windows身份validation),我得到以下错误信息:
与服务器build立了连接,但在login过程中发生错误。 (提供程序:命名pipe道提供程序,错误:0 – pipe道的另一端没有进程。)(Microsoft SQL Server,错误:233)
为什么它返回一个命名pipe道错误? 为什么不使用共享内存,因为这在连接协议列表中具有更高的优先级顺序? 这似乎是因为某些原因不在共享内存上进行侦听?
当我将命名pipe道设置为启用并尝试连接时,我收到相同的错误消息。
我的Windows帐户是没有我的计算机上的pipe理员priviliges – 也许这在某种程度上有所作为(如本文中有关“SuperSocketNetLib \ LPC”registry键的build议似乎build议)。
顺便说一下,我已经尝试重新启动SQL Server服务,并试图让某人使用pipe理员帐户login到计算机,以重新启动SQL Server服务。 仍然没有运气。
尝试启用命名pipe道,禁用TCP / IP和共享内存
在我的情况下,我将连接模式从Windows身份validation模式更改为SQL服务器和Windows身份validation模式。然后,它的工作原理!
启用您的SQL浏览器服务。 因为Express是一个命名实例,所以它不会在SSMS期望的默认端口上进行监听。 您也可以尝试强制连接到SSMS中的命名pipe道,在连接对话框中,单击选项,然后将networking协议设置为命名pipe道