首先让我说,我知道这个网络以及网络上的其他人试图解决这个问题.
在那里发布的解决方案不适用于我的问题.在决定提问之前,我花了5个小时试图解决这个问题.
问题:当我尝试使用SQL身份验证登录SSMS(或从Java应用程序连接)时出现此错误:
已成功与服务器建立连接,但在登录过程中发生错误.(提供程序:共享内存提供程序,错误:0 - 管道的另一端没有进程.)(Microsoft SQL Server,错误:233)
虽然它确实有效,但我不能选择使用集成身份验证.我尝试连接的数据库与我的SSMS实例在同一台机器上.没有网络,这是一个独立的系统.
在我的配置中启用了NAMED PIPES,我已重新启动,因为TCP IP比我的配置中的命名管道更高优先级.
我甚至已经远远没有卸载SQL Server并重新安装它,但无济于事.
我的SQL Server实例的详细信息如下:
Microsoft SQL Server Management Studio - 10.0.2531.0
Microsoft Analysis Services Client Tools - 10.0.1600.22
Microsoft Data Access Components (MDAC) - 6.1.7601.17514
Microsoft MSXML - 3.0 5.0 6.0
Microsoft Internet Explorer - 9.0.8112.16421
Microsoft .NET Framework - 2.0.50727.5466
Operating System - 6.1.7601
Run Code Online (Sandbox Code Playgroud)
配置详情如下:http : //i45.tinypic.com/vxdz7c.png http://i45.tinypic.com/vxdz7c.jpg
我使用此代码从java连接.
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost;database=AdventureWorks;integratedSecurity=false;User=JIMBO; Password=JIMBO;";
Connection con = DriverManager.getConnection(connectionUrl);
Run Code Online (Sandbox Code Playgroud)
但请记住,当我尝试直接登录SSMS时也会出现此错误.提前致谢.
-Jim
ren*_*ene 28
要强制使用TCP/IP,请在连接字符串中将localhost替换为127.0.0.1.
在使用用户名和密码时,请确保已启用SQL身份验证.默认情况下,仅在sqlserver 2008上启用Windows集成.
使用SqlServer身份验证时请记住,已实施密码策略以强制实施安全性.