以下是Debian上Oracle故障排查的核心技巧,結合搜索資源中的關鍵步驟整理:
環境變量
ORACLE_HOME、ORACLE_SID已正確配置,可通過echo $ORACLE_HOME驗證。PATH是否包含$ORACLE_HOME/bin,確保命令可用。監聽器狀態
lsnrctl status查看監聽器是否運行,未啟動時執行lsnrctl start。listener.ora配置文件路徑是否正確(通常位于$ORACLE_HOME/network/admin)。核心日志文件
$ORACLE_BASE/diag/rdbms/dbname/instance_name/trace/alert_dbname.log,用cat或less查看關鍵錯誤。journalctl -u oracle或/var/log/syslog排查系統級錯誤。診斷工具
ADMINISTER MANAGE ADR DATABASE命令收集診斷數據。UTL_FILE_DIR參數)。系統資源
top、df -h、free -m檢查內存、磁盤空間、CPU使用率,確保無資源不足。數據庫參數
SHOW PARAMETERS查看SGA、PGA、進程數等關鍵參數是否合理。表空間與數據文件
SELECT * FROM dba_tablespaces確認表空間狀態,檢查數據文件是否存在且可訪問。ALTER DATABASE DATAFILE '路徑' AUTOEXTEND ON開啟自動擴展。網絡連通性
ping測試客戶端到服務器的網絡,確保端口(默認1521)開放。ufw status(若啟用),放行Oracle端口。用戶權限
CONNECT和RESOURCE權限:SELECT * FROM dba_users WHERE username='用戶名';。GRANT CONNECT, RESOURCE TO 用戶名;。LOG_ARCHIVE_DEST參數指向新路徑。lsnrctl start,檢查listener.ora中LISTENER配置是否正確。ALTER TABLESPACE 表空間名 ADD DATAFILE '路徑' SIZE 100M AUTOEXTEND ON;。DBMS_MONITOR.SESSION_TRACE_ENABLE開啟會話跟蹤,通過TKPROF分析trace文件定位慢SQL。SELECT * FROM v$version確認數據庫版本,通過opatch工具應用官方補丁。提示:操作前建議備份重要數據,復雜問題可聯系Oracle支持并提供alert.log和trace文件。
參考來源: