连接sqlserver到底要不要写实例名?
我的服务器(名字叫BJF-D030)上装了两个sqlserver实例,一个10.50.2500,一个10.0.5500。用我的PC机上的SSMS去连接服务器上的数据库,写BJF-D030\SQLEXPRESS,就死活连不上,报26错误。可是如果直接写BJF-D030就能连上10.0.5500那个实例。
这是怎么回事,SSMS咋知道应该去连接哪个实例呢?难道是因为我的SSMS是10.0.5500版本的?
------解决方案--------------------默认实例: 机器名
命名实例: 机器名\实例名
IP方式: tcp:192.168.1.2,1433
注意: 一个机器只有一个默认实例.
其实,原理上SQL SERVER 实例的访问,肯定是 IP+端口 来实现的。但有其它两种方式访问:
#1.在本地定义一个别名
#2.依靠SQL SERVER的sql browser服务,可以根据客户端传来的"机器名\实例名"来判断访问哪个实例
--BJF-D030\SQLEXPRESS,你的这个是命名实例吗?是的话,看一下相关配置
http://www.cnblogs.com/daomul/archive/2013/04/01/2993646.html
------解决方案--------------------非默认实例的端口是动态的,应该不是1433.
1.保证命名实例服务已启动 2.保证sql browser服务开启 3.保证允许远程访问 4.把命名实例的端口写死,比如56565,然后用tcp:192.168.1.2,56565方式先看能不能访问。
------解决方案--------------------见过很多用实例名来连都不是很好,可以考虑用IP来连