什么是PSP0进程

Oracle PSP0 进程故障排查
alert上日志显示:
Sun Jun 14 15:01:06 2009
Thread 1 advanced to log sequence 3 (LGWR switch)
Current log# 3 seq# 3 mem# 0: /oradata/test/redo03.log
Sun Jun 14 15:51:27 2009
Thread 1 advanced to log sequence 4 (LGWR switch)
Current log# 1 seq# 4 mem# 0: /oradata/test/redo01.log
Sun Jun 14 15:51:46 2009
PSP0: terminating instance due to error 472
Instance terminated by PSP0, pid = 23322
在操作系统上显示
[ora10g@dbsvr bdump]$ ps -ef|grep ora_
ora10g 23453 1 0 16:00 ? 00:00:00 ora_pmon_test
[b]ora10g 23455 1 0 16:00 ? 00:00:00 ora_psp0_test[/b]
ora10g 23457 1 0 16:00 ? 00:00:00 ora_mman_test
ora10g 23459 1 0 16:00 ? 00:00:00 ora_dbw0_test
ora10g 23461 1 0 16:00 ? 00:00:00 ora_lgwr_test
ora10g 23463 1 0 16:00 ? 00:00:00 ora_ckpt_test
ora10g 23465 1 3 16:00 ? 00:00:00 ora_smon_test
ora10g 23467 1 0 16:00 ? 00:00:00 ora_reco_test
ora10g 23469 1 1 16:00 ? 00:00:00 ora_cjq0_test
ora10g 23471 1 3 16:00 ? 00:00:00 ora_mmon_test
ora10g 23473 1 0 16:00 ? 00:00:00 ora_mmnl_test
ora10g 23475 1 0 16:00 ? 00:00:00 ora_d000_test
ora10g 23477 1 0 16:00 ? 00:00:00 ora_s000_test
ora10g 23481 1 0 16:01 ? 00:00:00 ora_arc0_test
ora10g 23483 1 0 16:01 ? 00:00:00 ora_arc1_test
ora10g 23487 1 0 16:01 ? 00:00:00 ora_qmnc_test
ora10g 23489 1 23 16:01 ? 00:00:00 ora_j000_test
ora10g 23491 1 10 16:01 ? 00:00:00 ora_m000_test

PSP stands for Process SPawner and this process has the job of creating and managing other Oracle processes.
简言之,PSP进程就是进程产生器。
它在ORACLE上的pid为3
SQL> select PROGRAM from v$process where pid=3;

PROGRAM
------------------------------------------------
oracle@dbsvr (PSP0)

SQL> select sid,SERIAL# from v$session where paddr=(select addr from v$process where pid=3);

SID SERIAL#
---------- ----------
170 1

SQL> alter system kill session '170,1';
alter system kill session '170,1'
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel

alert日志显示
Sun Jun 14 16:37:25 2009
Errors in file /ora10g/app/admin/test/udump/test_ora_23514.trc:
ORA-07445: exception encountered: core dump [ksuklms()+444] [SIGSEGV] [Address not mapped to object] [0x39] [] []


那pid为1的是什么进程呢
SQL> select PROGRAM from v$process where pid=1;

PROGRAM
------------------------------------------------
PSEUDO

网上有此说法
“pid=1的进程是一个PSEUDO进程,这个进程被认为是初始化数据库的进程,启动其他进程之前即被占用,并在数据库中一直存在。”
可以看到这个进程在操作系统级别也没看到
SQL> select SPID,PROGRAM,SERIAL# from v$process where pid=1;

SPID PROGRAM SERIAL#
------------ ------------------------------------------------ ----------
PSEUDO 0


再查看此进程的session信息
SQL> select sid,SERIAL# from v$session where paddr=(select addr from v$process where pid=1);

no rows selected
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值