日志是定位问题的核心依据,WebLogic的日志文件通常位于DOMAIN_HOME/servers/your_server_name/logs/目录下(如/opt/weblogic/user_projects/domains/base_domain/servers/AdminServer/logs/)。重点查看server.log文件,通过错误代码(如BEA-000386、OutOfMemoryError)或堆栈跟踪信息,快速定位故障根源(如端口冲突、配置错误、依赖缺失)。
WebLogic依赖Java运行环境(JRE/JDK),需确保:
java -version命令验证Java是否安装,确认JAVA_HOME(如/usr/java/jdk1.8.0_391)、WL_HOME(WebLogic安装目录,如/opt/weblogic)等环境变量已正确配置并添加至PATH中。WebLogic默认使用7001(AdminServer)、7002(Managed Server)等端口,若这些端口被其他应用(如Nginx、Tomcat)占用,会导致启动失败。
netstat -tulnp | grep <端口号>或ss -tulnp | grep <端口号>命令检查端口占用情况;config/config.xml)中的端口设置(如<port>7001</port>改为7003)。DOMAIN_HOME)的所有者和组正确(通常为weblogic:bea),避免因root用户启动导致的权限不足。可使用chown -R weblogic:bea /opt/weblogic命令修复;edit.lok、config.lok、AdminServer.lok、EmbeddedLDAP.ldap.dat),这些文件可能残留导致启动阻塞。内存不足是常见启动错误(如OutOfMemoryError),需调整WebLogic启动内存参数:
bin/startWebLogic.sh(Linux)或startWebLogic.cmd(Windows)文件,修改-Xms(初始堆内存)和-Xmx(最大堆内存)参数(如-Xms512m -Xmx2048m);-Xmx不超过物理内存的70%)。Enforcing模式,可能阻止WebLogic绑定端口。可通过getenforce命令检查状态,临时关闭(setenforce 0)或永久修改(编辑/etc/selinux/config,将SELINUX=enforcing改为disabled);firewall-cmd --add-port=7001/tcp --permanent添加规则,然后firewall-cmd --reload生效。检查DOMAIN_HOME/config/目录下的核心配置文件(如config.xml、domain.xml、boot.properties):
sqlplus工具手动测试数据库连通性。servers/AdminServer/tmp/_WL_internal下的文件);diagnostic_files目录下的诊断日志(如*.trc、*.log),避免旧日志干扰启动。若使用较旧的WebLogic版本(如10.3.6),可能存在已知Bug(如内存泄漏、端口冲突),建议升级至最新版本(如14c),新版本通常包含问题修复和性能优化。
完成上述排查与修复后,先停止WebLogic服务(./stopWebLogic.sh),再重新启动(./startWebLogic.sh),观察启动日志是否仍有错误。若仍无法启动,可结合最新日志信息进一步分析。