利用Oracle小工具sysresv查看移除Oracle内存共享段
我们可能都知道在$ORACLE_HOME/bin,存在很多小工具,今天主要介绍一下工具sysresv,通过该工具我们查看实例对应的内存共享段,以及删除内存共享段
当我们的系统运行有多个实例时:
Shared Memory:
ID KEY
2490371 0x4566f728
Semaphores:
ID KEY
9797634 0xaf45a9f8
Oracle Instance alive for sid "mcactive"
IPC Resources for ORACLE_SID "mcstar" :
Shared Memory:
ID KEY
2686978 0x8f92b47c
Semaphores:
ID KEY
10584065 0x3ea594ac
Oracle Instance alive for sid "mcstar"
IPC Resources for ORACLE_SID "drb" :
Shared Memory:
ID KEY
491521 0x366d0098
Semaphores:
ID KEY
1802240 0x64466970
Oracle Instance alive for sid "drb"
如果更进一步,我们可以通过strings提取sysresv的用法:
Shared Memory:
ID KEY
2490371 0x4566f728
Semaphores:
ID KEY
9797634 0xaf45a9f8
Oracle Instance alive for sid "mcactive"
SYSRESV-005: Warning
Instance maybe alive - aborting remove for sid "mcactive"
当然除了使用sysresv之外,操作系统也提供了命令:ipcrm,可以从操作系统级别移除共享段。至于其用法,各种平台略有差异,具体用法查看联机文档,不做过多阐述。