產生的原因:
當一個段被刪除時,其分區不會立刻釋放。當進程刪除段后,段僅僅更改為其類型為臨時段,如果語句失敗,該操作將會備回滾。臨時段通常被清除并基于調用的結果釋放分區,但是如果字典緩存行代表的段仍然在使用或是臟的,臨時段清除將不會在此時發生。這通常在臨時段被遞歸調用釋放時出現,因為父事務沒有提交,臨時段不會被立刻清除。
如何使孤獨的臨時段被清除
清除臨時段并釋放它們的分區是SMON進程的任務。雖然smon每5分鐘被喚醒,但是除非被顯示喚醒,否則其每隔
2:05才檢查一次臨時段。即使如此,每次也只能清除5個臨時段,并且必須在5秒內得到鎖。因此臨時段清除可能很長時間才出現。
但是如果smon被其他進程顯示喚醒,它將執行臨時段清除。smon在每次空間事務失敗時也會被喚醒。通常較好的方法是使用ORADEBUG WAKEUP命令進行喚醒。
具體示例如下:
|
新聞熱點
疑難解答