你这个问题范围比较广,下面我按常见场景给你一套在 Debian 上调试 Oracle(通常是 Oracle Database / Oracle Instant Client / OCI 程序) 的实用思路。
在 Debian 上常见有几种:
不同情况调试重点不同。
systemctl status oracle-xe # 或 oracle
ps -ef | grep pmon
监听状态:
lsnrctl status
# alert log
$ORACLE_BASE/diag/rdbms/*/*/trace/alert_*.log
# listener log
$ORACLE_HOME/network/log/listener.log
常见错误:
sqlplus / as sysdba
startup
export ORACLE_HOME=/opt/oracle/instantclient
export LD_LIBRARY_PATH=$ORACLE_HOME
export PATH=$ORACLE_HOME:$PATH
Debian 常见坑:
libaio1sudo apt install libaio1
sqlplus user/pass@host:1521/service
或 tnsping:
tnsping ORCL
import cx_Oracle
cx_Oracle.init_oracle_client(lib_dir="/opt/oracle/instantclient")
打开调试:
import logging
logging.basicConfig(level=logging.DEBUG)
-Doracle.jdbc.Trace=true
strace 看系统调用strace -f sqlplus user/pass@db
ldd 看库依赖ldd $ORACLE_HOME/libclntsh.so
请告诉我:
我可以直接给你对应调试命令或解决方案。