本来这种技术性文档是不应该摆在心情故事的。
确实我真的太累了。好像在一个无人荒野里面大喊但是根本就没人听见。
以下的内容有很多技术性的东西。将就着看吧。呵呵
话说梦飞硬盘又出了一次问题,重新做了一次阵列,拿回了数据恢复。
恢复BBS和博客看起来都很顺利。
但是很不幸的,博客无法访问,只好马上停止了BBS跟博客的关联。
按照博客的错误类型来看,是数据库的问题,查看了一下居然是1月份的数据库。毫无疑问是附加了一个旧版的数据库。
还好baker找到了一个新版的2月底的数据库,很不幸的附加失败。出现3624错误。大意是说数据库有某个地方被截断。
其实用户方面我是一点不担心的,可以用同步程序把动网的克隆过来,但是900多篇日志就这样没了,其中我自己占10%左右,虽然我已经下载了html页回来,但是这样不是解决办法。
正当我没有办法的时候,鼠标过来帮忙用置疑的方法恢复了博客的数据库。大概的方法如下:
建立一个blog数据库,然后停止sql server,把新版的数据库文件copy进去取代系统建立的文件,启动sql server之后会发现数据库是灰色的置疑。
再新建一个博客数据库,把内容导回去,这个时候只能得到数据库结构,其实意义是不大的,因为里面的user和log表都是空的。
没办法只好select恢复了置疑的数据库,发现user和log是有数据的,但是log里面有几个断点,所以校验长度无法通过,因此也就无法附加。
而且置疑数据库对用户是孤立的,想关联用户的时候跟我说“因为该数据库处于回避恢复模式”不能关联,这个数据库实际上也就没有任何作用,唯一的作用就是里面的数据了。
所谓天无绝人之路,打开查询分析器,把旧数据insert回去。由于中间有断点,要反复测试logid的断点,在断点之间把数据插入。范例如下
insert into newblog.dbo.oblog_log(topic, logtext, userid, authorid, author, addtime, truetime, iis, face, commentnum, classid, subjectid, showword, ishide, ispassword, trackbacknum, passcheck, istop, isbest, isencomment, blog_password, tburl, logfile, isdraft, issave, subjectfile, logTags, logTagsId, logType, Abstract, Abstract_Auto, EditorType, filename, logpics, specialid, scores, vote0, vote1, isTrouble, isdel, addip, tbcode) select topic, logtext, userid, authorid, author, addtime, truetime, iis, face, commentnum, classid, subjectid, showword, ishide, ispassword, trackbacknum, passcheck, istop, isbest, isencomment, blog_password, tburl, logfile, isdraft, issave, subjectfile, logTags, logTagsId, logType, Abstract, Abstract_Auto, EditorType, filename, logpics, specialid, scores, vote0, vote1, isTrouble, isdel, addip, tbcode from oblog_log where logid>1463 and logid<=1600 order by logid
反复的弄之后新的数据库(姑且成为newblog)终于恢复了,马上同步用户数据库,心想这次OK了,谁知还是出了问题,首先是其中某个字段不能为空,插入的时候用了空值导致插入失败,同时导致了动网注册用户失败,同步也随之失败。
更新了这个字段之后,又同步一次用户,同步的问题终于成功了。
然而登录系统之后,用户无法管理自己的日志,查询了代码之后发现是rs.recordcount的数值为-1,插入多少数据死活都没反应。回头去oblog下载最新的补丁,打了之后仍然失败。(可耻的说)
毫无疑问了,肯定还是数据库的问题。至少结构有问题。要我一个字段一个字段分析?不如杀了我好过了。
使用access导入新建一个log表,把数据导入,由于这次的log表数据是连续的,所以很轻松完成了任务。把新建的log改成默认的log,结果还是失败。(由此证明Access是多么的可耻)
最后没辙了。拿出了oblog的sql建表语句,重新建一个数据库和表(这是为了保证数据表的正确性),把数据从newblog导过去,日志管理终于可以用了。(MD,已经超级想打人)
但是首页死活不能更新。这个问题好办,服务器权限没有设好,授权过去,完成。
所有的问题至此基本上解决。这个东东从星期二折腾到星期四。心血少一点都给它折腾死了。