如何连接到SQL Server 2008 Express的本地实例

我刚在我的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,并select安装SQL Server Management Studio Basic。

现在,当我尝试连接到PC-NAME \ SQLEXPRESS(使用Windows身份validation,就像我以前一样),我收到以下消息:

无法连接到PC-NAME \ SQLEXPRESS。 与SQL Serverbuild立连接时发生networking相关或特定于实例的错误。 服务器未find或无法访问。 validation实例名称是否正确,并将SQL Serverconfiguration为允许远程连接。 (提供程序:SQLnetworking接口,错误:26 – 错误定位服务器/实例指定)(Microsoft SQL Server,错误:-1)有关帮助,请单击: http : //go.microsoft.com/fwlink?ProdName= Microsoft+SQL +服务器&EvtSrc =&的MSSQLServer EvtID = -1&LINKID = 20476

当我安装SQL Server 2008时,我使用SQLEXPRESS作为本地实例名称。 据我所知,通过SQL Serverconfigurationpipe理器,SQL Server被configuration为允许远程连接。

当我去帮助链接提到,帮助页面build议如下:

  • 确保服务器上启动了SQL Server Browser服务。
  • 使用SQL Server表面区域configuration工具来启用SQL Server来接受远程连接。 有关SQL Server表面区域configuration工具的更多信息,请参阅服务和连接的表面区域configuration。

那么,据我所知,我的系统上没有SQL Server Browser服务(在MMC中查找一个,找不到一个)。

SQL Server 2008中不存在SQL Server表面区域configuration工具。所以,在您的帮助文档中,微软也是如此;微软;-)。

我不知道该怎么做。 我在升级到2008年之后,希望能够完成很多工作(我正在与之合作的那个人,毫无问题地告诉我这很容易 – 他对数据库的东西也好多了,上午)。 有没有人有什么想法可能是错的? 我真的很感激。 如果在几个小时内我无法得到这个工作,我将回到SQL Server 2005(如果这将甚至工作,呃…)。

编辑:我已经尝试closuresWindows防火墙,这并没有帮助。 另外,我注意到我的SQL Server 2008安装目录树下没有“Data”目录 – 我可能在安装时设置了错误吗?

请检查您提供的ServerName。 它应该与UserName文本框中下面显示的名称匹配,并且该名称应该跟在\SQLEXPRESS

连接对话框

启动您的本地SQL Server服务

  • 启动SQLconfigurationpipe理器:单击开始 – > Microsoft SQL Server 2008 R2 – > SQL Serverconfigurationpipe理器
  • 启动SQL服务:将SQL Server(SQLEXPRESS)和SQL Server Browser服务设置为自动启动模式。 右键单击每个服务 – >属性 – >进入服务选项卡

这将确保它们在重新启动计算机时再次启动。 请检查以确保两种服务的状态均为“正在运行”。

启动您的本地SQL Server 2008服务

使用本地SQL Serverlogin并进行身份validation

  • 现在打开SQL Server Management Studio并单击“连接到对象资源pipe理器”并select服务器名称:

[你的电脑名称] \ SQLEXPRESS

例如: 8540P-KL \ SQLEXPRESS或(localhost)\ SQLEXPRESS

  • 要find您的PC名称:右键单击我的电脑 – >属性 – >计算机名称选项卡

  • 替代方法:使用Windows身份validationlogin:使用用户名[您的域名] / [您的用户名]

SQL Server 2008用户帐户设置

设置用户帐户

  • 创build一个新的loginacct:在SQL Mgmt Studio – >展开您的本地服务器 – >安全性 – >右键单击login – >新login

  • 在新用户帐户上设置密码设置:取消选中强制执行密码策略,密码过期,用户必须更改密码(因为这是本地)默认数据库 – >您的数据库

  • 将angular色授予新用户帐户:用户映射页面 – >映射到您的数据库并授予db_ownerangular色状态页面 – >授予连接和启用login的权限

SQL Server 2008用户设置本地数据库

为用户设置访问权限/设置

  • 启用所有validation模式:右键单击本地服务器 – >属性 – >安全选项卡 – >启用SQL Server和Windowsvalidation模式
  • 启用TCP / IP:打开SQL Serverconfigurationpipe理器 – > SQL Servernetworkingconfiguration – > SQLEXPRESS协议 – >启用TCP / IP
  • 重新启动SQL Server服务:启用TCP / IP后,必须重新启动SQL Server(SQLEXPRESS)

SQL Server 2008服务器权限

Spring项目的数据库属性文件

  • database.url = jdbc:jtds:sqlserver:// [本地PC计算机
    name]; instance = SQLEXPRESS; DatabaseName = [db name];

  • database.username = [你的用户名] database.password = [你的密码]

  • database.driverClassName = net.sourceforge.jtds.jdbc.Driver

如果您想查看更大的屏幕截图和更好的答案格式,请查看下面的博客文章: 设置SQL Server 2008本地实例博客文章:

哈哈,哦,伙计,我明白了。 不知何故,当我安装SQL Server 2008时,我没有安装数据库引擎。我不知道我是怎么错过的,但是这就是发生了什么。

我知道这个问题是旧的,但万一它可以帮助任何人确保SQL Server浏览器正在服务MSC中运行。 我安装了SQL Server Express 2008 R2,并将SQL Server Browser Service设置为“已禁用”。

  1. 开始 – >运行 – > SERVICES.MSC
  2. find“SQL Server Browser” – >右键 – >属性
  3. 将启动types设置为自动 – >单击应用
  4. 重试您的连接。

我刚刚解决了这个问题,可能会帮助其他人。

最初加载了MSSMSE它有服务器作为PC_NAME\SQLEXPRESS ,当我试图连接它给了我Error: 26 - Error Locating Server/Instance Specified ,所以我去了SQL Serverconfigurationpipe理器来检查我的SQL Server BrowserSQL Server服务正在运行,并设置为自动,只是发现,而不是说SQL Server (SQLEXPRESS)它说SQL Server(MSSQLSERVER)

我然后尝试连接到PC-NAME\MSSQLSERVER ,这次得到SQL Network Interfaces, error: 25 - Connection string is not valid) (MicrosoftSQL Server, Error: 87) The parameter is incorrect所以我GOOGLE了这个错误,发现有人有build议使用PC-NAME\MSSQLSERVER而不是使用PC-NAME作为服务器连接接口上的服务器名称,这似乎是可行的。

这里有一个链接http://learningsqlserver.wordpress.com/2011/01/21/what-version-of-sql-server-do-i-have/它解释说,MSSQLSERVER是默认的实例,可以连接到只使用你的主机名。;

我想这可能是因为我以前安装过SQL Server 2008。

我使用(LocalDB)\ MSSQLLocalDB作为服务器名称,然后我能够看到所有本地数据库。

在您的实例的configurationpipe理器和networkingconfiguration和协议下启用了TCP / IP? 这可能是问题。

 var.connectionstring = "server=localhost; database=dbname; integrated security=yes" 

要么

 var.connectionstring = "server=localhost; database=dbname; login=yourlogin; pwd=yourpass" 

对我来说,我只能通过使用“。”来使它工作。 在服务器名称字段中; 正在尝试用户名和服务器名称的不同组合。 请注意,在安装服务器(即此文件:SQLEXPR_x64_ENU.exe)期间,我检查默认实例,默认名称为MSSQLSERVER; 上面的高票答案可能是最好的单独命名(即当你需要超过1)的服务器实例。

这两个video帮助我:

  • 使用点作为服务器名称: https : //www.youtube.com/watch?v = DLrxFXXeLFk
  • 一般设置: https : //www.youtube.com/watch?v = vng0P8Gfx2g

您应该检查的第一件事之一是SQL Server(MSSQLSERVER)已启动。 您可以转到服务控制台(services.msc)并查找SQL Server(MSSQLSERVER)以查看它是否已启动。 如果没有,那么开始服务。

您也可以通过键入net start mssqlserver通过提升的命令提示符来执行此操作。

对我来说这是一个Windows防火墙问题。 允许传入连接。 开放的港口没有工作,但允许程序。

链接

LINK2