解决MSSQL 2008不能用IP登录的

网络整理 - 08-20

  mssql 2008已安装好了一个实例(我按默认情况下安装的实例是:SQLEXPRESS),并安装了SQL Server Management Studio工具。

  为了满足可以用(local)或IP地址登录2008,需要以下配置支持:

  一、打开“SQL Server 配置管理器”,做如下配置:

  1、点开“SQL Server服务”节点

  找到我们安装的SQL服务:SQL SERVER(SQLEXPRESS),双击它打开属性设置对话框,把登录身份中的内置帐户选中,并下拉选择“Network Service”:它的意思是用于网络服务,这样一来可以远程的客户端就可以重启这个SQL Server服务了,要不然重启服务功能只限于本机。

  2、点开“SQL Server网络配置”节点。

  再点开“实例名的协议”(我的是SQLEXPRESS的协议)。能看到我的实例是支持Share Memory, Named Pipes, TCP/IP, VIA这几种协议的。

  右键点击“TCP/IP”选择启用。再右键它选择属性,在属性对话框中,切换到“IP地址”卡片,能看到有“IP1”,“IP2”...“IPAll”这几类针对IP的设置信息。首先,因为我们目前用不上“TCP动态端口”的功能,所以把这几类IP的TCP动态端口全设置为空(如果是0的话则表示启用动态端口功能)。再因为我准备把SQLEXPRESS实例向外提供服务的端口设置为1433(和SQL2000的默认服务连接端口号保持一致性),所以需要针对各类IP把它们的TCP端口一项设置为1433(其实仅仅只需要把IPALL的TCP端口号设置为1433,其它类型的均为空即可,最关键就是这条了,哎之前没仔细看,这里默认的是4133)。再把各类IP的“活动”和“已启用”均设置为“是”。点击“确定”保存配置。

  3、点开“SQL Native Client 10.0配置”节点(如果没有的话,可能是你的软件安装得有问题,或者没有安装客户端工具:SQL Server Management Studio)。

  再点击“客户端协议”,找到“TCP/IP”,双击它打开属性对话框,设置“默认端口”为1433(和上面配置的端口号只要保持一致即可),设置“已启用”为“是”。点击确定保存配置。

  4、重启SQLEXPRESS实例。

  直接在ms-dos窗口,netstat -a 看看有没有1433端口打开,就知道成功没了,下面进一步测试。