oracle 9i switch logfile hang
现象:
solaris 系统oracle 9i单实例数据库
SQL> alter system switch logfile; ###hang住了
解决方法:
1、生成10046文件:
SQL> select value from v$parameter where name = 'user_dump_dest';
VALUE
--------------------------------------------------------------------------------
/ora/szuat/szuatdb/9.2.0/admin/SZPRD_mis-uat/udump
SQL> alter session set events '10046 trace name context forever ,level 8';
Session altered
SQL> alter system switch logfile;
^C alter system switch logfile
*
ERROR at line 1:
ORA-01013: user requested cancel of current operation
SQL> alter session set events '10046 trace name context off' ;
Session altered.
2、查看等待事件:
WAIT #1: nam='switch logfile command' ela= 866 p1=0 p2=0 p3=0
WAIT #1: nam='switch logfile command' ela= 439 p1=0 p2=0 p3=0
WAIT #1: nam='switch logfile command' ela= 484 p1=0 p2=0 p3=0
WAIT #1: nam='switch logfile command' ela= 544 p1=0 p2=0 p3=0
WAIT #1: nam='switch logfile command' ela= 781 p1=0 p2=0 p3=0
WAIT #1: nam='switch logfile command' ela= 576 p1=0 p2=0 p3=0
WAIT #1: nam='switch logfile command' ela= 337 p1=0 p2=0 p3=0
WAIT #1: nam='switch logfile command' ela= 383 p1=0 p2=0 p3=0
3、修改参数:
SQL> show parameter log_archive_start
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_start boolean FALSE
SQL> alter system archive log start; ##alter system set log_archive_start=true scope=spfile;
System altered.
4、问题恢复:
SQL> alter system switch logfile;
System altered.