在 Linux 上“检查 Oracle 配置”通常涉及操作系统环境、Oracle 软件配置、数据库实例参数、监听与网络几个方面。下面按最常用的检查项给你一个清晰清单,适合运维/排障使用。
whoami
id
确认是 oracle 用户(或安装用户)
检查环境变量:
env | grep -i oracle
重点看:
ORACLE_HOMEORACLE_SIDPATH 是否包含 $ORACLE_HOME/bin示例:
echo $ORACLE_HOME
echo $ORACLE_SID
ls $ORACLE_HOME
常见目录:
binnetworkdbsrdbms检查版本:
$ORACLE_HOME/bin/sqlplus -v
ps -ef | grep pmon
有 ora_pmon_实例名 表示已启动
sqlplus / as sysdba
select status from v$instance;
状态应为:
OPENlsnrctl status
关注:
$ORACLE_HOME/network/admin/listener.ora
$ORACLE_HOME/network/admin/tnsnames.ora
测试连接:
tnsping 服务名
show parameter sga;
show parameter pga;
show parameter db_name;
show parameter control_files;
或:
select name, value
from v$parameter
where name in ('memory_target','sga_target','processes');
select parameter, value
from nls_database_parameters
where parameter='NLS_CHARACTERSET';
select tablespace_name, status from dba_tablespaces;
select file_name, bytes/1024/1024 MB from dba_data_files;
ulimit -a
重点:
nofilenprocOracle 推荐配置在:
/etc/security/limits.conf
sysctl -a | grep sem
sysctl -a | grep shm
或查看:
/etc/sysctl.conf
cat /etc/oratab
格式:
ORCL:/u01/app/oracle/product/19c/dbhome_1:Y
Y 表示允许自动启动
echo "ORACLE_HOME=$ORACLE_HOME"
echo "ORACLE_SID=$ORACLE_SID"
ps -ef | grep pmon | grep -v grep
lsnrctl status
如果你能告诉我:
我可以给你更精确的检查清单或排错步骤。