无法通过java或其他工具连接到本地sql server sqlexpress实例



我在Win 7 64上安装了SQL Server 2008 Express。我可以使用Windows身份验证通过SQL Server Management Studio连接到它,但不能使用SQL服务器身份验证。按照中的指示http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express/,我觉得我已经正确配置了远程连接&sql服务器身份验证。然而,当我尝试登录时,我会收到一个错误,说明登录失败。谷歌搜索似乎没有帮助,因为答案没有意义,似乎不适用。其中之一是建议将动态端口更改为空白,对端口进行硬编码。由于该工具默认情况下没有以这种方式安装,我很难相信这是实际问题。我发现没有一个帖子解释为什么应该改变。

确切的信息是:

无法连接到bvl-wd bturner\SQLEXPRess附加信息:用户"DTN\bill.turner"登录失败。(Microsoft SQL Server,错误18456)

我尝试使用以下凭据登录:

服务器类型:数据库引擎服务器名称:bvl-wd-bturner\SQLEXPRESS身份验证:SQL Server身份验证登录:DTN\bill.turner密码:

至于使用Windows身份验证登录的价值,我会查看连接属性。用户名符合上述登录信息。服务器名称相同(实际上是复制/粘贴以确保两者都相同)。

===更新===Windows防火墙已关闭。

我也尝试过对端口号进行硬编码,删除了所有动态端口上的"0",并将端口设置为1433。运气不好-(

===更新2===我意识到我需要创建一个SQL Server帐户,并且已经这样做了。我现在可以使用以下凭据通过SSMS登录。然而,我似乎无法通过DbVisualizer或带有以下内容的测试java文件登录:

驱动程序是net.sourceforge.jtds.jdbc.Driver连接url为jdbc:jtds:sqlserver://bvl-wd-bturner:1433/host

我现在在SSMS中成功使用的凭据是:服务器类型:数据库引擎服务器名称:bvl-wd-bturner\SQLEXPRESS身份验证:SQL Server身份验证登录:本地密码:

在这一点上,我不得不相信这是我明显缺少的东西,但还没有找到。

登录名:DTN\bill.turner看起来像Windows登录名,而不是没有域组件的SQL server登录名。DTN是你的域名吗?如果是这样的话,提供SQL登录可能会让客户端混淆,从而尝试windows身份验证,如果登录不存在,则会失败。

您(在SQL管理工作室中)创建的SQL server登录名是什么?它不应该有域\用户名格式,它应该只是一个自己的用户名。您还需要确保在连接时选择SQL身份验证。

尝试将您当前登录的帐户(Windows)添加到计算机上的"本地管理员"组中。

开头发布的链接,http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express/

加上这篇关于设置默认登录数据库的文章:http://blog.sqlauthority.com/2008/11/04/sql-server-fix-error-4064-cannot-open-user-default-database-login-failed-login-failed-for-user/

为我解决了这个问题。希望它能帮助其他最终来到这里的人。

最新更新