为什么80%的码农都做不了架构师?>>>
晚上睡得很晚,1点半被电话吵醒,是霍工。听声音他们好像在服务器机房里边。
原来是呼叫中心系统的安全认证服务器被呼叫中心新招的菜鸟给重装了。我靠,居然是重装而不是重启。导致呼叫中心系统找不到认证信息,无法登陆。
赶紧的爬起来,打开电脑吧。这个系统一直是我在负责的,只是因为好长时间没有问题,不管它已经有半年多了,日常的运维都是交给呼叫中心的人。前不久呼叫中心的两个运维人员都辞职了,现在来了一个新人,什么都不懂!
先想办法取消认证吧,重装了的机器,不知道数据库有没有备份,如果没有备份,那才真的是完蛋了。呼叫中心从来就没有从系统的日常运维中吸取教训,去年他们自己开发的一个备件系统,因为机器硬盘损坏,导致整个程序和数据库丢失。现在又来这么一手,还让不让人睡觉了!
可是我的机器上没有安装WebLogic,近一年一直在这个ASP.NET的项目中耗着呢。别着急,Java环境是有的,先检查一下。
C:\Documents and Settings\yonge>java -version
java version "1.3.1_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1_01)
Java HotSpot(TM) Client VM (build 1.3.1_01, mixed mode)
一定是安装了Oracle数据库造成了系统环境变量设置更改造成的。赶紧的修改一下操作系统环境变量,把path里边自己设置的JDK\bin目录的设置放到最前面去。
C:\Documents and Settings\yonge>java -version
java version "1.4.2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2-b28)
Java HotSpot(TM) Client VM (build 1.4.2-b28, mixed mode)
好了!现在来搞一搞取消认证。认证信息是在LoginServlet里边设置的,可是我现在本地的程序代码不是最新的,如果完全重新编译,可能会出问题。并且,本地没有安装WebLogic,使用ant也无法编译。
先通过VPN链接到服务器上,从服务器上拷贝一个bea\weblogic81\server\lib目录下的所有内容到本地。比较大,慢慢拷贝吧,我先看看有没有其它办法。
能否直接编译Login类,然后把这个class拷贝到服务器上去覆盖呢?这是可行的!javac了一下,我靠,一堆错误。当然的嘛,因为很多相关联的类没有编译,并且classpath都没有设置要用到的jar包。
看来还是要用ant包来处理。对了包含有ejb的jar包可以从服务器上拷贝一个过来,这样就不用编译ejb了,也就不用weblogic的安装目录了嘛。
拷贝过来之后,运行ant compile,有一个文件中两条语句编译不通过,估计是版本的问题,没有关系,先注释掉这两句,重新编译:
D:\yonge>ant compile
Buildfile: build.xml
init:
[delete] Deleting:..\tclcsm.war
[delete] Deleting directory ..\ant
[mkdir] Created dir: ..\ant
[mkdir] Created dir: ..\ant\jsp
[delete] Deleting: ..\lib\tclcsm.jar
[copy] Copying 1 file to ..\lib
javacompile:
[javac] Compiling 273 source files to ..\ant
compile:
BUILD SUCCESSFUL
Total time: 13 seconds
好了!其实我只要他编译的LoginServlet.class这一个类就够了,找到这个class文件,拷贝到服务器上。
登陆到服务器上,停止WebLogic服务,用winRAR工具打开.war文件,找到.war文件中的相应的这个文件,把重新编译的这个文件覆盖进去,完了看了看这个文件的时间,没错,是刚编译的这个文件。
重新启动WebLogic,咦,不行!怎么可能??
打开WebLogic启动目录下的Config.xml文件看了一下,我靠,以前的那个管理员把.war文件的发布目录改了。靠,重新弄了一下,启动WebLogic,好了,认证已经取消了。看来拷贝bea的lib目录是没有用的了。
然后打电话通知霍工,说已经搞好了一台服务器,另外两个服务器的密码他们修改后我不知道,让他们的人拷贝一下发布文件到其它几个机器上去重新启动weblogic就可以了。(整个应用发布了多个WebLogic!)应该要继续睡觉了。
这么折腾一下,不知道啥时候才能睡着呢?一般情况下,我也的要半个小时才能睡着,看了看手机上的时间,估计要3点才能睡着了。
一会儿,又打电话过来了,原来他们的菜鸟管理员和我们的大牛管理员霍工在一起啊。他说不知道怎么弄其它两个机器,我靠,拷贝一下发布包,重新发布都不回,我真他妈的服了他了。
我躺在床上,迷迷糊糊的指挥他
“你先进去104,D盘下......”
“进去了没有啊......”
“D盘下,deploy目录下,有一个文件夹,是什么什么20080305的一个目录,看到没有?”
“不用整个目录拷贝,只拷贝下面的.war的哪个文件就可以了!”
“拷贝过去之后要先停止WebLogic再覆盖,你知道覆盖哪个文件吗?”
——“我整个硬盘搜索一下同名文件,再替换可以吗?”,对方弱弱的问。
我想了想,也懒得管了“可以!”。倒头下来,又开始睡觉。
十分钟之后,电话又来了,我靠,这丫的没完没了的了。他说他拷贝过去之后还是不行,我着急的都快骂人了。想想这家伙刚来,整出这么大事情来,估计自己也不好受,我忍。
“你看看WebLogic的启动目录,看到了吗?”
“有一个config.xml文件”
"config.X-M-L"。声音大了一点
“C-O-N-F-I-G.X-M-L文件”.我咬牙切齿的一个字母一个字母的说了一遍!
“不是用控制台,是文件系统中看,找到了吗!?”
“......”教了三分钟没成功。
“算了,你告诉我91和92两个服务器的密码,我来帮你弄吧”。然后我又从床上爬起来,插上插头,打开电脑,插上网线,拨VPN......
两分钟后发了一个短信给他们,这次是真的搞定了。
睡觉吧,我好困啊......嘴里念叨着“平常心,平常心.......我不生气”,进入了梦乡。