测试环境 linux 6 oracle 11.2.0.4
这个环境这是安装了软件,想测试一下 sqlplus / as sysdba
竟然报ORA-12547
百思不饶 查看bin/oracle 权限也是对的
用strace -f sqlplus / as sysdba
跟踪 找到了一个trace文件
oracle@oracle6 db_1]$ vi /opt/app/oracle/product/11.2.0/db_1/rdbms/log/orcl_ora_3144.trc
Dump file /opt/app/oracle/product/11.2.0/db_1/rdbms/log/orcl_ora_3144.trc
*** 2022-01-13 11:10:57.702
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /opt/app/oracle/product/11.2.0/db_1
System name: Linux
Node name: oracle6
Release: 2.6.32-71.el6.x86_64
Version: #1 SMP Wed Dec 15 12:36:54 EST 2010
Machine: x86_64
Instance name: ORCL
Redo thread mounted by this instance: 0 <none>
Oracle process number: 0
Unix process pid: 3144, image: oracle@oracle6
*** 2022-01-13 11:10:57.703
ORA-00600: internal error code, arguments: [SKGMINVALID], [13], [16777216], [0], [1520200], [], [], [], [], [], [], []
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
skdstdst()+41 call kgdsdst() 000000000 ? 000000000 ?
7FFF26D28860 ? 7FFF26D28938 ?
7FFF26D2D3E0 ? 000000002 ?
ksedst1()+103 call skdstdst() 000000000 ? 000000000 ?
7FFF26D28860 ? 7FFF26D28938 ?
7FFF26D2D3E0 ? 000000002 ?
ksedst()+39 call ksedst1() 000000000 ? 000000001 ?
7FFF26D28860 ? 7FFF26D28938 ?
7FFF26D2D3E0 ? 000000002 ?
dbkedDefDump()+2746 call ksedst() 000000000 ? 000000001 ?
7FFF26D28860 ? 7FFF26D28938 ?
7FFF26D2D3E0 ? 000000002 ?
ksedmp()+41 call dbkedDefDump() 000000003 ? 000000000 ?
7FFF26D28860 ? 7FFF26D28938 ?
后台竟然报 600 错误了,看到了一个参数 1520200 好像很眼熟,因为我本来想验证 shmall 这个参数 ,这个参数就是shmmax 的值,
查询资料 ora 600 SKGMINVALID 得知是shmmax 值太小了不正确,
调整这个值到2G 再sqlplus / as sysdba 回答正常的idle 状态了。
版权声明:本文为xxjj2003原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。