|
TO YONGHUANG:抱歉,关于这个帖子1、2两点,我回答的欠妥。
我认真看了一下资料,关于带APPEND的INSERT语句的redo和undo可以选择产生和不产生,楼主测试库的设置是否是产生UNDO的呢?
下面我贴出部分资料内容,大家一起参考:
Specifying the Logging Mode for Direct-Path INSERT
Direct-path INSERT lets you choose whether to log redo and undo information during the insert operation.
1、You can specify logging mode for a table, partition, index, or LOB storage at create time (in a CREATE statement) or subsequently (in an ALTER statement).
2、If you do not specify either LOGGING or NOLOGGING at these times:
(1)The logging attribute of a partition defaults to the logging attribute of its table.
(2)The logging attribute of a table or index defaults to the logging attribute of the tablespace in which it resides.
(3)The logging attribute of LOB storage defaults to LOGGING if you specify CACHE for LOB storage. If you do not specify CACHE, then the logging attributes defaults to that of the tablespace in which the LOB values resides.
3、You set the logging attribute of a tablespace in a CREATE TABLESPACE or ALTER TABLESPACE statements.
Note:
If the database or tablespace is in FORCE LOGGING mode, then direct path INSERT always logs, regardless of the logging setting.
4、Direct-Path INSERT with Logging
In this mode, Oracle Database performs full redo logging for instance and media recovery. If the database is in ARCHIVELOG mode, then you can archive redo logs to tape. If the database is in NOARCHIVELOG mode, then you can recover instance crashes but not disk failures.
5、Direct-Path INSERT without Logging
In this mode, Oracle Database inserts data without redo or undo logging. (Some minimal logging is done to mark new extents invalid, and data dictionary changes are always logged.) This mode improves performance. However, if you subsequently must perform media recovery, the extent invalidation records mark a range of blocks as logically corrupt, because no redo data was logged for them. Therefore, it is important that you back up the data after such an insert operation.
|
|