关于ssms:如何连接到SQL Server 2008 Express的本地实例

How to connect to local instance of SQL Server 2008 Express

我刚在Vista SP1计算机上安装了SQL Server 2008 Express。我以前在这里使用过2005年的版本,并且在旧的SQL Server Management Studio Express中使用得很好。我可以毫无问题地连接到我的pc-namesqlexpress实例(不,pc-name不是我的计算机名;-)。

我卸载了2005和SQL Server Management Studio Express。然后我在我的计算机上安装了SQL Server 2008 Express,并选择让它安装SQL Server Management Studio Basic。

现在,当我尝试连接到pc-namesqlexpress时(使用Windows身份验证,就像我以前一样),我收到以下消息:

无法连接到pc-namesqlexpress。与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服务。
  • 使用SQL Server外围应用配置工具使SQL Server能够接受远程连接。有关SQL Server外围应用配置工具的详细信息,请参阅服务和连接的外围应用配置。

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

SQL Server 2008中不存在SQL Server外围配置工具。在帮助文档方面做得很好,Microsoft;-)。

我现在不知该怎么办。在升级到2008年之后,我希望今天能完成很多工作(和我一起工作的人可以毫无问题地启动和运行它,并告诉我这很容易——他也比我更擅长数据库方面的工作)。有人知道可能出什么问题吗?我真的很感激。如果我不能在几个小时内完成这项工作,我将返回到SQL Server2005(如果这项工作成功的话,gah…)。

编辑:我试图关闭Windows防火墙,但没有帮助。另外,我注意到我的SQL Server 2008安装目录树下没有"data"目录-我安装它时可能设置了错误吗?


请检查您提供的服务器名。它应该与用户名文本框中显示的以下名称匹配,并且该名称后面应该跟\SQLEXPRESS

Connect dialog


启动本地SQL Server服务

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

如果重新启动计算机,这将确保它们再次启动。请检查以确保两个服务的状态都是"正在运行"。

氧化镁

登录并使用本地SQL Server进行身份验证

  • 现在打开SQL Server Management Studio并单击"连接到对象"并选择服务器名称:

[您的电脑名]sqlexpress

示例:8540P-KLsqlExpress或(localhost)sqlExpress

  • 要查找您的电脑名称:右键单击"我的电脑"->"属性"->"计算机名称"选项卡

  • 备选方案:使用Windows身份验证登录:使用用户名[您的域]/[您的用户名]

氧化镁

设置用户帐户

  • 创建一个新的登录帐户:在SQL mgmt studio->expand your local server->security->right中单击登录->新建登录

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

  • 将角色授予新用户帐户:用户映射页->映射到数据库并授予数据库所有者角色状态page->授予连接和启用登录的权限

氧化镁

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

  • 启用所有身份验证模式:右键单击本地服务器->属性->安全选项卡->启用SQL Server和Windows身份验证模式
  • 启用TCP/IP:打开SQL Server配置管理器->SQL Server网络配置->SQLExpress协议->启用TCP/IP
  • 重新启动SQL Server服务:启用TCP/IP后,必须重新启动SQL Server(SQLExpress)

氧化镁

Spring项目的数据库属性文件

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

  • database.user name=[用户名]database.password=[密码]

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

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


哈哈,哦,孩子,我知道了。在某种程度上,我在安装SQL Server 2008时没有安装数据库引擎。我不知道我是怎么错过的,但事实就是这样。


我使用(localdb)mssqllocaldb作为服务器名,然后我可以看到所有本地数据库。


我知道这个问题由来已久,但如果它可以帮助任何人确保SQL Server浏览器在服务MSC中运行。我安装了SQL Server Express 2008 R2,SQL Server Browser服务设置为"禁用"。

  • 开始->运行->services.msc
  • 查找"SQL Server浏览器"->右键单击->属性
  • 将启动类型设置为自动->单击应用
  • 请重试连接。

  • 我刚刚解决了一个与此相关的问题,这可能会帮助其他人。

    最初,当加载msmse时,它的服务器是PC_NAME\SQLEXPRESS,当我尝试连接时,它给了我Error: 26 - Error Locating Server/Instance Specified,所以我进入SQL Server配置管理器检查我的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上搜索了这个错误,发现有人建议不要使用PC-NAME\MSSQLSERVER,只使用PC-NAME作为服务器连接接口上的服务器名,这似乎有效。

    这里有一个链接http://learningsqlserver.wordpress.com/2011/01/21/what-version-of-sql-server-do-i-have/,说明mssqlserver是默认实例,只需使用主机名即可连接到。

    我认为这可能是因为我在过去的某个时候安装了SQL Server 2008。


    在配置管理器和网络配置下,您的实例的协议是否启用了TCP/IP?这可能是问题所在。


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

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


    对我来说,我只能通过在服务器名称字段中使用"."来让它工作;我尝试了一会儿用户名和服务器名称的不同组合。请注意,在安装服务器(即此文件:sqlexpr_x64_enu.exe)期间,我检查了默认实例,该实例默认名称为mssqlserver;上述高投票率的答案最好用于单独的命名(即当您需要1个以上的服务器实例时)。

    这两个视频都帮助我:

    • 使用点作为服务器名称: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防火墙问题。允许传入连接。打开端口不起作用,但允许程序起作用。

    链接

    Link 2