一、问题情况

 

       Win7 家庭高级版,访问SQL Server 时出现不能访问的错误,具体连接及错误情况见下图:

                 Win7 下SQL Server不能连接的一个案例解决

                 Win7 下SQL Server不能连接的一个案例解决

 

 

二、问题处理

经过了解,发现SQL Server的端口号进行了更改,由默认的1433改成了特定值,如45000

三、问题解决

1、通过设置ODBC数据源测试本机是否能正常访问,主要通过配置客户端配置实现,如下图所示Win7 下SQL Server不能连接的一个案例解决

               

                ODBC测试可以正常访问数据库。

                 2、再次打开SQL Server连接服务器,仍然不能正常访问服务器

 

                 3、建立udl文件测试,操作方法如下

 

                     3.1 在桌面上新建一个文本文件,将其后缀名改为udl,然后双击打开,出现下面的配置界面

 

                     3.2 配置界面

 

                           Win7 下SQL Server不能连接的一个案例解决

 

                   配置好服务器需要的连接参数后,点击测试连接,发现连接正常

 

             4、再次打开SQL Server连接服务器,仍然不能正常访问服务器  

 

             5、打开SQL Server配置管理器,如下图所示

                 Win7 下SQL Server不能连接的一个案例解决

 

                Win7 下SQL Server不能连接的一个案例解决

 

               之前通过ODBC建立的数据源,在别名选项中已可以查询,其端口号被配置为45000了,通过上面的描述可以知道ODBC及udl的方式都可以正常访问了,再测试,将上面别名中的记录删除,发现ODBC及udl方式都不能正确访问,因此可以推断ODBC及udl都通过了此别名对服务器进行了访问,可是为什么SQL Server就是不能呢?

 

              于是打开SQL Native Client配置(32)位的别名中新建一个别名,如下图

                                 

                              Win7 下SQL Server不能连接的一个案例解决

              建立后的别名情况

                           Win7 下SQL Server不能连接的一个案例解决

 

            在SQL Native Client配置(32)位的别名中建立如图所示的别名后,再次打开SQL Server连接服务器,连接正常。

 

    四、总结

 

            问题本身并不复杂,在SQL Server端口号更改的情况下,通过配置客户端别名进行连接是一个常规手段,不过这个案例中比较有意思的是,采用ODBC及普通udl测试方式访问服务器时,采用了SQL Native Client配置中的别名,而用SQL Server直接进行连接时却采用了SQL Native Client配置(32位)下的别名。

相关文章: