1、因为sql2000安装过程中无法修改实例名称,故安装过程中必须先安装sql2000,然后再安装sql2005。安装sql2005时必须修改sql实例名称,否则将和sql2000的实例名称冲突。
2、安装完sql2005后,开始准备用sql2000客户端工具连接sql2005,结果报告不能用sql2000客户端工具连接,只能用sql2005客户端工具连接,后证明sql2005客户端工具可以同时连接sql2000和sql2005。
3、服务器上安装完成后,准备用远程连接sql服务器试试,结果始终连接不上sql2005,只能连接上sql2000。原来sql2000服务器用的端口始终是1433端口,而sql2005使用的是动态端口,那如果用程序连接sql20005服务器的时候,程序如何知道sql2005服务器用的是什么端口呢?原来sql2005提供了一个sql brower服务,开启这个服务后,就可以通过查询sql brower服务知道sql2005现在正在使用哪个端口。因为项目需要,需要把这个sql2005的动态端口改成静态的,修改过程如下:
运行sql配置管理程序,找到sql的实例名称下面的协议,双击右边的tcp/ip协议,在第二选项卡中ipall里面输入sql运行的端口就可以了(注意不能同时填写动态端口和静态端口,否则sql下次将无法启动),修改完成后重新启动sql服务即可生效。
4、修改端口后在连接发现仍然不能连接,原来还需要开启sql2005的远程登陆服务。
在microsoft sql server 2005中默认的是不允许远程登录的,会出现“provider: sql 网络接口, error: 26 - 定位指定的服务器/实例时出错”的错误,下面的方法可以打开:
配置工具->sql server外围应用配置器->服务和连接的外围应用配置器->打开mssqlserver节点下的database engine节点,选择“远程连接”,接下来建议选择“同时使用tcp/ip和named pipes”,确定后,重启数据库教程服务就可以。
5、远程登陆服务和端口都修改之后连接应该没有问题了吧?结果远程连接sql2000的时候发现没有问题,但是连接sql20005依然不行,在sql2005的客户端连接工具里面需要输入您要连接的sql服务,sql2000的直接输入服务器的ip地址即可,那如何输入才能让客户端工具连接到sql2005的服务呢?既然sql2005修改了端口,那按照常规的录入格式应该是输入:ip地址+冒号+端口号应该就可以了。结果试了一下发现依然不行。后来又修改了客户端连接的默认端口,结果仍然不行。没办法了,只有到网上google了一翻,终于在一篇英文文章中找到了连接的方法。原来按照常规的格式录入是错误的,需要改成:ip地址+逗号+端口号才行。一试,果然可以。然后在试着通过.net程序访问看能否连接,结果都可以。
总结:就是因为连接输入的格式错误,害得我弄了一天才找到办法,真是郁闷,不知道sql2005为什么不用常规的方法,而要把冒号改成逗号连接。