Weblogic8时代将weblogic注册成为Windows服务是一件很简单的事,只要执行Domain目录下的installService.cmd即可。不过进入Weblogic9之后,domain目录下就没有了那个脚本,而是出现在%WL_HOME%/server/bin下,直接运行会生成一个“bea_”的服务,运行的话。。。没有任何结果,BEA的edocs上也没有找到有用的帮助。以下内容,是我盯着installService.cmd和startWeblogic.cmd出神良久后试验成功的。
- 复制一份installServer.cmd到domain目录下,编辑installServer.cmd,在set WL_HOME=…… 下添加set DOMAIN_HOME=<你的domain目录>
- 将下一行的call “%WL_HOME%\common\bin\commEnv.cmd”修改成call “%DOMAIN_HOME%\bin\setDomainEnv.cmd”(如果这里的setDomainEnv.cmd写完整路径,那么上一步DOMAIN_HOME可以不用设置,因为setDomainEnv.cmd里还会声明一遍的)
- 另起一行,添加两行“set USERDOMAIN_HOME=%DOMAIN_HOME%”“set DOMAIN_NAME=<你的domain名字>”(这是脚本最末一段Install the service里beasvc命令所需要的参数)
- 运行installServer.cmd,会在服务里新建一个名为“beasvc %DOMAIN_NAME%_%SERVER_NAME%”的服务,自动运行,帐户属性的是localsystem。
- beasvc命令各个参数的详细意义可以参考beasvc /help以上内容对于Oracle Weblogic 10依旧有效。weblogic密码遗忘补救方法
- 备份 %DOMAIN_HOME%/security下的DefaultAuthenticatorInit.ldift文件,和%DOMAIN_HOME%下的boot.properties文件(如果不在这个目录,那么找找 %DOMAIN_HOME%/servers/AdminServer/security目录),这样如果下列步骤操作失败还能还原回去。
- 运行java -cp /bea/weblogic92/server/lib/weblogic.jarweblogic.security.utils.AdminAccount <新用户名> <新密码> .(注意最后有个点的,点之前有空格,不要和原先的一样)
- 执行完后在当前目录会生成一个新的DefaultAuthenticatorInit.ldift文件,然后替换原来的%DOMAIN_HOME%/security/DefaultAuthenticatorInit.ldift文件。
- 从%DOMAIN_HOME%/servers/AdminServer/data/ldap/子目录中删除初始化状态文件DefaultAuthenticatormyrealmInit.initialized,删除boot.properties。
- 运行startWebLogic.sh,启动过程中会让你输入用户名和密码,输入新建立的那个
- 用新的用户名密码登录管理控制台,在“安全领域”里点击“”,在用户和组里,找到之前的那个用户,修改密码,保存,那么以后可以继续使用原来的用户名和密码登录,
- 修改boot.properties中的用户密码为上一步修改过的用户密码(明文)格式为username=用户名password=密码
- 重启服务器,现在不用输入用户名密码了,成功启动后,weblogic会加密用户密码的,现在就可以用旧用户登录,新用户可以删除。
该贴被lusxingbao编辑于2013-3-21 16:06:10