我正在尝试从本地计算机上的SQL Server Management Studio访问我的VPS上的SQL Server实例.它不起作用(我得到的错误是:
建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.
我想这是因为我需要配置数据库引擎以允许远程连接(如果我错了,请纠正我!).所以我找到了这个循序渐进的指南来帮助我做到这一点:http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express/我必须在指南中指出10点,我现在卡住了!我的VPS上没有安装SQL Server Management Studio.无论如何,这给我留下了两个选择:
安装SSMS
在没有安装SSMS的情况下,在指南中找到另一种方法来完成第10点
我尝试使用Web平台安装程序在我的VPS上安装SSMS但它仍然失败.我不知道它为什么失败,因为它似乎没有给出原因.有谁知道我怎么能以不同的方式允许远程连接?
我的VPS上安装的SQL Server版本是SQL Server 2008 R2 Express.
更新:
我试图在我的笔记本电脑和VPS上禁用防火墙,看看它是否是防火墙问题.这对错误消息没有任何影响.
另一个更新:
现在已经能够安装SSMS(我直接从网站安装而不是使用WPI),我已经能够检查服务器是否配置为允许远程连接(我去了SSMS,连接到SQL Server实例,右单击连接,单击属性,转到Connections选项卡."已允许远程连接到此服务器".
解
感谢大家帮助我找到这个解决方案!我终于设法让它上班了!我按照Filip De Vos的建议,在我的VPS上打开防火墙端口,然后收到了不同的错误消息.这导致我进一步调查,我发现我使用了错误的凭据登录!所以我为sa用户设置了密码,我已经设法使用它进行登录!再次感谢!
要启用混合身份验证,您可以更改以下注册表项:
HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\LoginMode
将值更新为2并重新启动Sql Server服务以允许混合身份验证.请注意,可能需要更新MSSQL.1以反映您尝试更改的SQL Server实例的数量.
连接错误的原因可能是安装在服务器上的病毒扫描程序阻塞sqlserver.exe
.
另一个原因可能是SQL Server Browser服务未运行.如果此服务未运行,则无法在命名实例上连接(当它们使用动态端口时).
也可能没有设置Sql Server来侦听TCP连接,只允许命名管道.
在"开始"菜单中,打开"程序">"Microsoft SQL Server 2008">"配置工具">"SQL Server外围应用配置"
在"Surface Area Configuration"实用工具中,单击"SQL Server配置管理器"链接
展开"SQL Server网络配置"并选择"协议".
启用TCP/IP.如果您需要命名管道,那么您也可以在此处启用它们.
最后但同样重要的是,Windows防火墙需要允许连接到SQL Server
使用"动态端口"系统时,为sqlserver.exe添加例外.
否则,您可以为SQL Server端口添加例外(默认端口1433)
还为SQL Server Browser添加一个例外.(udp端口1434)
更多信息:
如何:为数据库引擎访问配置Windows防火墙
服务器连接方法主题(数据库引擎)
最后一点,SqlLocalDB仅支持命名管道,因此无法通过网络连接到它.
除了将Services.msc中的SQL Server Browser服务配置为Automatic,并启动该服务之外,我还必须在以下位置启用TCP/IP:SQL Server Configuration Manager SQL Server网络配置| [实例名称]的协议| TCP/IP
在VPS上启动SQL Server配置管理器.
看一下SQL Server网络配置.确保已启用 TCP/IP .
接下来看看SQL Server服务.确保SQL Server Browser正在运行.
重新启动SQL Server实例的服务.