最近Oracle发布了19c长期支持版本的最新补丁(2025年8月更新),许多DBA发现新版本中SID查询方式有细微调整,今天我们就用最直白的方式,手把手教你5种查询Oracle SID的实用技巧!
SID(System IDentifier)相当于Oracle数据库的"身份证号",连接数据库、配置监听时都需要用到,就像你去银行办业务得带身份证一样,DBA日常运维也离不开它!
常见需要查SID的场景:
✅ 配置tnsnames.ora文件时
✅ 用SQL*Plus连接数据库时
✅ 排查监听程序故障时
连上数据库后执行这个万能命令:
SELECT instance_name FROM v$instance;
执行结果示例:
INSTANCE_NAME
--------------
ORCL
💡 小技巧:如果提示"未连接",先用sqlplus / as sysdba
登录哦!
在Linux/Unix服务器上执行:
ps -ef | grep pmon
你会看到类似这样的输出:
oracle 12345 1 0 Aug01 ? 00:00:08 ora_pmon_ORCL
最后面的ORCL
就是SID!Windows系统可以在任务管理器找ORACLE.EXE
进程的命令行参数。
找到数据库的pfile
或spfile
:
cd $ORACLE_HOME/dbs grep -i db_name init*.ora
或者直接看spfile内容:
CREATE pfile='/tmp/init_temp.ora' FROM spfile;
在服务器执行:
lsnrctl status
在输出结果中找到类似这样的段落:
Service "ORCL" has 1 instance(s)
Instance "ORCL", status READY
按Win+R
输入regedit
打开注册表:
导航到:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_<OracleHomeName>
查找ORACLE_SID
的值
❌ 如果所有方法都查不到SID:
ORACLE_SID=任意值 sqlplus / as sysdba
连接后查询 根据Oracle 19c最新文档(2025年8月):
🔸 多租户环境中CDB$ROOT会显示为容器ID
🔸 云环境可能显示为服务名而非传统SID
建议DBA们收藏这篇文章,下次找SID时就不用像无头苍蝇一样乱试啦!如果有其他妙招,欢迎在评论区分享~ ✨
本文由 上官嘉悦 于2025-08-02发表在【云服务器提供商】,文中图片由(上官嘉悦)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/520755.html
发表评论