一个Net框架升级引发的血案

##背景 07年给客户做了个电子政务系统,用Asp.net,SqlServer2000(各用独立服务器),中间对Net框架进行过升级,到了Net3.5。去年客户升级了数据库,使用SqlServer2008R2。为了运维,我也打算在IIS服务器上安装SqlServer2008的管理工具,然而,该工具需要Net3.5SP1,而这个Sp1无论如何都装不上,报1603错误。随后找了第三方工具来做数据运维。

##问题 最近要给客户升级,结果更新后提示找不到CSC.exe 查看Windows目录下的Net版本,发现只到3.0 -- 此时哥已经忘记之前曾经装有3.5了 赶紧找回旧的版本,还是同样的错误! 以为安装Net3.5可解决问题,于是从网上下载到本机,再从本机复制到服务器(VPN),花了2小时 开始安装,还是1603错误 尝试各种网上找得到的方法:查安装日志、用专用工具删除低版本Net框架、设置注册表、关闭杀毒软件等,依然无解。只能安装到Net3.0,就再也无法前进一步。时间来到晚上12点。 Net3.5装不上,访问网站则报找不到CSC错误(值得注意的是,其他配套网站还是正常的) 找到一个更旧的系统版本(09年的备份),居然不出错,好吧,暂时将就使用了。。。时间来到半夜2点

##第二天 中午继续折腾,居然发现是Web.Config的问题,里边写明了要用Net3.5,而操作系统上并没有这个!所以才老是报找不到csc.exe,因为他需要的是3.5的。

##解决 客户从半年前的系统备份恢复旧的操作系统(虚拟化云计算就是好),哥再次更新,搞定。

分析 SqlServer2008在安装Net3.5Sp1失败后,也造成了原有的Net3.5丢失。而我更新系统后,引起Asp.net的重新编译,于是出错。而恢复到最新的备份时,也因为该备份基于Net3.5而出错。09年的备份其实是Net2.0的。

##小结 ###1、生产环境遵循墨菲定律,不管安装什么东西都可能引起错误。就这个莫名的1603问题,损失了6小时业余时间!这个时间去看世界杯,去看电影,去见女同学。。。无论做什么都比查这个不靠谱的1603错误强。 ###2、一定要做好备份。这次幸好用户采用了虚拟化,备份也还算及时,同时数据库采用双机系统。

转载于:https://my.oschina.net/sqhua/blog/289805

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值