日志是定位問題的核心依據,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用戶啟動導致的權限不足??墒褂?code>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
),觀察啟動日志是否仍有錯誤。若仍無法啟動,可結合最新日志信息進一步分析。