我刚在Vista SP1计算机上安装了SQL Server 2008 Express。我之前在2005年就已经使用旧的SQL Server Management Studio Express了。我能够连接到我的PC-NAME \ SQLEXPRESS实例没有问题(不,PC-NAME不是我的电脑名称; - )。
我卸载了2005和SQL Server Management Studio Express。然后,我在我的计算机上安装了SQL Server 2008 Express,并选择安装SQL Server Management Studio Basic。
现在,当我尝试连接到PC-NAME \ SQLEXPRESS(使用Windows身份验证时,就像我一直这样),我收到以下消息:
无法连接到PC-NAME \ SQLEXPRESS。 建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供程序:SQL网络接口,错误:26 - 找到指定的服务器/实例时出错)(Microsoft SQL Server,错误:-1) 如需帮助,请点击:http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=-1&LinkId=20476
当我安装SQL Server 2008时,我让它使用SQLEXPRESS作为本地实例名称。据我所知,通过SQL Server配置管理器,SQL Server配置为允许远程连接。
当我访问它提到的帮助链接时,帮助页面会显示以下内容:
嗯,据我所知,我的系统上没有SQL Server Browser服务(在MMC中查找一个,找不到一个)。
SQL Server 2008中不存在SQL Server表面区域配置工具。使用您的帮助文档,Microsoft可以很好地工作; - )。
我现在不知道该做什么。在升级到2008之后,我有很多工作,我希望能够完成这项工作(我正在与之合作的人在没有问题的情况下完成并运行它并且告诉我这很容易 - 他对数据库的东西也更好了我上午)。有谁知道什么可能是错的?我真的很感激。如果我不能在几个小时内完成这项工作,我将回到SQL Server 2005(如果它甚至可以工作,那么......)。
编辑:我尝试关闭Windows防火墙,但这没有帮助。另外,我注意到我的SQL Server 2008安装目录树下没有“数据”目录 - 安装时我是否可能设置错误?
答案 0 :(得分:323)
请检查您提供的ServerName。它应与UserName文本框中的以下显示的名称匹配,并且该名称后面应跟\SQLEXPRESS
:
答案 1 :(得分:103)
启动本地SQL Server服务
如果重新启动计算机,这将确保它们再次启动。请检查以确保两种服务的状态均为“正在运行”。
使用本地SQL Server登录并进行身份验证
[您的电脑名称] \ SQLEXPRESS
示例: 8540P-KL \ SQLEXPRESS或(localhost)\ SQLEXPRESS
要查找您的PC名称:右键单击我的电脑 - >属性 - > 计算机名称选项卡
替代方法:使用Windows身份验证登录:使用用户名[您的 域名/ [您的用户名]
设置用户帐户
在SQL Mgmt Studio中创建新的登录帐户 - >展开本地服务器 - >安全 - >对 点击登录 - >新登录
在新用户帐户上设置密码设置:取消选中强制执行密码策略,密码过期和用户必须 更改pw(因为这是本地的)默认数据库 - >您的数据库
向新用户帐户授予角色用户映射页面 - >映射到您的数据库并授予db_owner角色状态 页面 - >授予连接和启用登录的权限
设置用户的访问权限/设置
Spring Project的数据库属性文件
database.url = jdbc:jtds:sqlserver:// [本地PC计算机
name]; instance = SQLEXPRESS; DatabaseName = [db name];
database.username = [您的用户名] database.password = [您的密码]
database.driverClassName = net.sourceforge.jtds.jdbc.Driver
如果您想要查看更大的屏幕截图和更好的答案格式,请查看以下博客文章: Setting up a Local Instance of SQL Server 2008 Blog Post:
答案 2 :(得分:33)
答案 3 :(得分:29)
我使用(LocalDB)\ MSSQLLocalDB 作为服务器名称,然后我能够看到所有本地数据库。
答案 4 :(得分:21)
我知道这个问题很老,但是如果它有助于任何人确保SQL Server Browser在服务MSC中运行。我安装了SQL Server Express 2008 R2,并且SQL Server Browser Service已设置为Disabled。
答案 5 :(得分:13)
我刚刚解决了与此相关的问题,这可能有助于其他人。
最初在加载MSSMSE时,服务器为PC_NAME\SQLEXPRESS
,当我尝试连接时,它给了我Error: 26 - Error Locating Server/Instance Specified
,所以我进入SQL Server配置管理器检查我的SQL Server Browser
并且SQL Server
服务正在运行并设置为自动,但却发现SQL Server (SQLEXPRESS)
而不是SQL Server(MSSQLSERVER)
。{/ p>
然后我尝试连接到PC-NAME\MSSQLSERVER
,这次得到SQL Network Interfaces, error: 25 - Connection string is not valid) (MicrosoftSQL Server, Error: 87) The parameter is incorrect
所以我搜索了这个错误,发现有人建议不要使用PC-NAME\MSSQLSERVER
而只使用PC-NAME
服务器连接接口上的服务器名称,这似乎有效。
这里有一个链接http://learningsqlserver.wordpress.com/2011/01/21/what-version-of-sql-server-do-i-have/,它解释了MSSQLSERVER是默认实例,只需使用您的主机名即可连接。
我认为这可能是因为我在过去的某个时候安装了SQL Server 2008。
答案 6 :(得分:8)
在您的实例的配置管理器和网络配置和协议下是否已启用TCP / IP?这可能是问题所在。
答案 7 :(得分:7)
var.connectionstring = "server=localhost; database=dbname; integrated security=yes"
或
var.connectionstring = "server=localhost; database=dbname; login=yourlogin; pwd=yourpass"
答案 8 :(得分:6)
对我而言,我只能通过使用"来实现它。"在服务器名称字段中;正在试图尝试用户名和服务器名称的不同组合。请注意,在安装服务器期间(即此文件:SQLEXPR_x64_ENU.exe),我检查了默认实例,该实例默认名称为MSSQLSERVER;上述高投票答案可能最适合用于单独命名(即,当您需要多于1个)服务器实例时。
这两个视频帮助了我:
答案 9 :(得分:3)
您应该检查的第一件事是SQL Server(MSSQLSERVER)已启动。您可以转到服务控制台(services.msc)并查找SQL Server(MSSQLSERVER)以查看它是否已启动。如果没有,则启动该服务。
您也可以通过提升命令提示符键入net start mssqlserver
来执行此操作。
答案 10 :(得分:0)