现象描述:
某专网局点,两套系统,新系统为sqlserver2000数据库,老系统为sqlserver7数据库,要将旧系统业务下线,上线到新系统。
当晚进行数据库替换后,其他业务测试正常,短信发送不可,同时数据库代理提示调用失败。
 
问题处理:
1. 检查sqlserver数据库中报错存储过程,对该存储过程进行验证,没有发现问题。
2. 检查新上的数据库代理的BDE配置,测试连接正常。
3. 用现网正常使用的一台老的数据库代理服务器进行测试,连接新系统数据库,同样问题

4.使用旧系统的数据库,连接新系统数据库代理服务器可以正常使用,说明新系统数据库代理服务器没有问题。应该是新数据库有问题;
5.考虑到原来旧系统所用的为sqlserver7,而新系统为sqlserver2000,将sqlserver2000重新安装成sqlserver7再次测试问题依然。
6.考虑到业务数据库服务器是后来才加入域的,原来未加入域之前,数据库代理服务器和数据库的连接一直很正常。后来将该机加入域,结果就出现问题了。将系统彻底重新安装,数据库不再加入域,仍然做工作组用,此时在进行测试,不在报错,测试通过。
 

分析总结:
很多数据库的问题都是由于加入域引起的。所以加入域一定要注意,在安装系统时就应该事先规划好,安装系统时就明确该机器是属于某域还是属于工作组,然后安装完系统后在安装数据库,这样就不会出现问题。但如果在安装完数据库后想把该机器加入域,数据库访问就会出现问题。因为加入域后,整台机器的计算机名称都变了,会自动在计算机名称后加域名的后缀。而很多数据库默认都是以本机初始名称做数据库服务器名称。而客户端查×××器就会出现问题,这样就会出现数据库不能访问的问题。

1. 建议数据库名称最好要写成IP地址;
2. 不要在安装完数据库后,再将服务器加入域,会引起很多不必要的麻烦。服务器的用途应该在安装系统前就作好打算;