关闭数据库时,在sqlplus里面输入shutdown immediate迟迟无响应
所以查看了alertlog文件
$ cd $ORACLE_BASE
$ ls
admin
$ cd admin
$ ls
nbcs
$ cd *
$ ls
adump
$ cd bdump
$ tail -f al*
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
Tue Jul 31 19:19:39 2012
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
Tue Jul 31 19:19:49 2012
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
Tue Jul 31 19:20:00 2012
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
发现以上错误不断产生
查看相应trc
$ ls -al | grep pmon
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
-rw-r-----
找到第一个当时的pmon trc文件
$ more nbcs_pmon_1253768.trc
/oracle/ora10g/admin/nbcs/bdump/nbcs_pmon_1253768.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning and Data Mining options
ORACLE_HOME = /oracle/ora10g/product/10.2.0
System name:
Node name:
Release:
Version:
Machine:
Instance name: nbcs
Redo thread mounted by this instance: 1
Oracle process number: 2
Unix process pid: 1253768, p_w_picpath: oracle@p550b (PMON)
*** 2012-07-31 19:18:54.923
*** SERVICE NAME:(SYS$BACKGROUND) 2012-07-31 19:18:54.899
*** SESSION ID:(280.1) 2012-07-31 19:18:54.899
PMON unable to acquire latch
----------------------------------------
SO: 700000106255df8, type: 2, owner: 0, flag: INIT/-/-/0x00
ksdxfstk+002c<-ksdxcb+04e4<-sspuser+0068<-000044C0<-skgpwwait+0094<-ksliwat+05a4<-kslwaitns+001c<-kskthbwt+01f8<-kslwait+0058<-ksupetrm+0260<-ksupxtrm+0020<-ksukia+00e0
<-opistp_real+1838<-opistp+0300<-opiodr+0adc<-ttcpip+1004<-opitsk+1000<-opiino+0990<-opiodr+0adc<-opidrv+0474<-sou2o+0090<-opimai_real+01bc<-main+0098<-__start+0098
Dump of memory from 0x070000010623D9A8 to 0x070000010623DBB0
70000010623D9A0
70000010623D9B0 07000001 06D2BCA8 00000007 0003139D
70000010623D9C0 07000001 06D2BD88 00000007 0003139D
70000010623D9D0 07000001 06D2BE80 00000007 0003139D
70000010623D9E0 07000001 06D2BF60 00000007 0003139D
70000010623D9F0 07000001 06D2C040 00000007 0003139D
70000010623DA00 07000001 06D2C120 00000007 0003139D
70000010623DA10 07000001 06D2C200 00000007 0003139D
70000010623DA20 07000001 06D2C2E0 00000007 0003139D
70000010623DA30 07000001 06D2C3C0 00000007 0003139D
70000010623DA40 07000001 06D2C4A0 00000007 0003139D
70000010623DA50 07000001 06D2C580 00000007 0003139D
70000010623DA60 07000001 06D2C660 00000007 0003139D
70000010623DA70 07000001 06D2C740 00000007 0003139D
70000010623DA80 07000001 06D2C820 00000007 0003139D
70000010623DA90 07000001 06D2C900 00000007 0003139D
可以看见latch info信息,正在holding,state=busy,继续可看见相关进程:
$ su - root
root's Password:
root:/>ps -ef | grep 3691000
root:/>
root:/>ps -ef
找到了对应进程,发现是由于一个连接sqlplus未退出导致。。最后将此连接推出,数据库成功关闭。