The DLM Statistics Collection and Management slave (SCM0) background process is responsible for collecting and managing statistics on global enqueue service (GES) and global cache service (GCS). This process works if DLM statistics collection is enabled in a database.
In order to solve the problem, either the DML statistics collection must be disabled or the scm0 process should be stopped and restarted automatically.
You can stop the DML statistics collection by setting the value “_dlm_stats_collect” to 0 (zero).
1 |
SQL> alter system set "_dlm_stats_collect" = 0 scope = spfile sid = '*'; |
You can see the current value of the parameter as follows.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
SQL> select * from ( select x.ksppinm param, y.ksppstvl value from x$ksppi x , x$ksppcv y where x.indx = y.indx and x.ksppinm like '\_%' escape '\' order by x.ksppinm ) where param ='_dlm_stats_collect'; 2 3 4 5 6 7 PARAM -------------------------------------------------------------------------------- VALUE -------------------------------------------------------------------------------- _dlm_stats_collect 1 |
The parameter change requires the database to be restarted.
Another way is to determine the process ID of the relevant scm0 process and to terminate it with kill -9. The process will restart automatically after it is killed.
1 2 |
[root@orcldb01 ~]# ps -ef|grep scm oracle 112092 1 0 May22 ? 00:02:28 ora_scm0_ORCL1 |
1 |
[root@orcldb01 ~]# kill -9 112092 |