oracle12c新特性(5)- 臨時undo

ultradb發表於2016-11-21

1. oracle12c新特性(5)- 臨時undo

  每個Oracle資料庫包含一組與系統相關的表空間,例如SYSTEMSYSAUXUNDO & TEMP,並且它們在Oracle資料庫中每個都用於不同的目的。在Oracle 12c R1之前,臨時表生成的undo記錄是儲存在undo表空間裡的,通用表和持久表的undo記錄也是類似的。而在12c R12的臨時undo功能中,臨時undo記錄可以儲存在一個臨時表中,而無需再儲存在undo表空間內。這樣做的主要好處在於:減少undo表空間,由於資訊不會被記錄在redo日誌中,所以減少了redo資料的生成。你可以在會話級別或者資料庫級別來啟用臨時undo選項。

  啟用臨時undo功能

  要使用這一新功能,需要做以下設定:

·         相容性引數必須設定為12.0.0或更高

·         啟用 TEMP_UNDO_ENABLED 初始化引數

·         由於臨時undo記錄現在是儲存在一個臨時表空間中的,你需要有足夠的空間來建立這一臨時表空間

·         對於會話級,你可以使用:ALTER SYSTEM SET TEMP_UNDO_ENABLE=TRUE;

  查詢臨時undo資訊

  以下所列的字典檢視是用來檢視或查詢臨時undo資料相關統計資訊的:

·         V$TEMPUNDOSTAT

·         DBA_HIST_UNDOSTAT

·         V$UNDOSTAT

  要禁用此功能,你只需做以下設定:

SQL> ALTER SYSTEM|SESSION SET TEMP_UNDO_ENABLED=FALSE;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24179204/viewspace-2128798/,如需轉載,請註明出處,否則將追究法律責任。

相關文章