有次在云服务器上安装sql express版,远程连接的时候折腾了好久,这过程对sql server的端口、实例、服务有了更多的认识。

常见的连接错误主要是服务器地址错误,没有开启允许远程,帐号或密码错误,这些都比较好处理,下面来分析下其它造成远程连接出错的原因。

实例

sql server的实例分为默认实例和命名实例

默认实例是唯一的但不是必须的,实例名为:MSSQLSERVER

命名实例在安装时候可以自行设定,exprss版默认为SQLEXPRESS

端口

端口分为固定端口和动态端口

固定端口默认为1433,也可自行设定为其他值

动态端口为自动分配

SQL Server Browser服务

此服务默认使用1434端口,提供的功能为实例与端口间的对应关系,你可以把它理解成DNS(域名与IP的对应关系)。

下面来分析下几种链接字符串的使用条件

1、Data Source=IP

这种方式只能连接到默认端口的默认实例,与服务器上有几个实例,使用什么端口和是否开启Browser无关。

2、Data Source=IP实例名

首先从Browser服务获取对应实例的端口号,然后连接到对应端口的实例。相当通过DNS找了域名对应的IP地址,然后访问。

这种方式需要Browser服务器的支持,与服务器上有几个实例,使用什么端口无关。

3、Data Source=IP,端口

直接连接到对应端口的实例,相当于直接使用IP访问网站。

这种方式不需要开启Browser服务,与服务器上有几个实例没有关系,但如果使用的动态端口可能在服务重启后变化导致无法连接,所以这种方式不推荐使用。

4、Data Source=IP,端口实例名

这应该是万能字符串,要是还连接不上,请仔细检查本文开头列举的常见错误!

最后编辑:2020年06月26日 ©著作权归作者所有

发表评论