您的位置:首页 > 编程语言 > ASP

asp.net IIS “/”应用程序中的服务器错误 解决方案[sql server 2000和 sql server 2005共存, web.config]

2013-03-06 17:57 731 查看
由于工作需要, 为网站换空间数据库时出现了 应用程序中的服务器错误, 这个提示, 我的服务器具体环境是,win server 2003+IIS6.0+.net2.0+sql server 2000+sql server 2005, 也就是说同一台服务器要sql server 2000和sql server 2005共存, 并且已经有几个站分别分布到这两个数据库内, 也就是说这两个服务器是可以共存的. 为什么提到这一点, 在下文的问题分析时会提到原因. 外部环境大致就是这样了. 再来介绍一下要转移的网站对象. .net程序开发, sql server 2005数据库支持. 有一点要说明的是, 这个数据库连接字符串是用工具加密的, 加密的信息也就是包括数据库名,用户名和密码及服务器的IP这四个选项, 在上线之前已经在本地测试通过(本地是单个的sql server 2005数据库). 一切OK, 把网站传到服务器上, 将备份的数据库还原到服务器的sql server 2005内. 然后用将数据库的相关信息输入到加密的工具里, 却出现连接错误的提示.



出现这个问题时首先的反应是:

问题1: 数据库不兼容的问题, 但是后来一想,如果真是这样的问题的话, 为什么其他的sql server 2005的站都可以正常访问呢? 应该不是这个问题. 这个疑点被排除;

问题2: 数据库没有被正确还原, 基于这个思路我查了其中一个表, 结果发现有数据输出, 这个这个疑点被排除;

问题3: 既然程序和数据库在本地的测试正常, 而同样的程序和数据在服务器上出现这个问题, 那很大的可能是数据库的连接有问题, 这一点无法排除, 所以就基于这一点进行解决. 根据由易到难的思路来解决, 按照这个工具的提示, 先用sa帐户和密码进行登陆, 结果如上图. 由于这个sa是sql server 2005数据库的, 故且用sql server 2000的sa密码来测试, 结果发现竟然可以成功连接了, 这样问题就很明显了, 问题原因就是由于在数据库连接时, 系统默认的是采用sql server 2000的sa用户名及密码, 之后又为sql server 2005新建了一个新的用户及设置了密码, 使用这个工具还是不能成功连接, 而经过实践可知, 这sql server 2000和sql server 2005数据库的sa的密码不能一样. 解决这个问题的方案出现了, 也就是如果能找到使连接工具连接字符串时, 能保证使用sql server 2005作为默认选项即可. 后来经群里的朋友指点, 要启用sql server 2005作为默认的选项很简单, 就是在数据库所在的IP这个地址里用: .\数据库实例名 来代替.这个点即可. 按照这种思路,在系统的右下角一个sql server管理器中找出对应sql server 2005的实例名, 如下图:



具备了连接数据库的一切要求, 然后将相关信息输入到加密工具内, 进行测试, 结果发现可以成功连接, 这个问题解决.



剩下的工作就很简单了, 直接"执行配置", 该工具直接更新了web.config这个文件的数据库连接信息, 如果程序没问题, 该站就可以正常运行了. 至此, “/”应用程序中的服务器错误, 这个问题得到解决

注:我的这个问题应该是个案, 所以仅供有sql server 2000和sql server 2005数据库共存的朋友参考.

本文系原创,地址:/article/5960559.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐