ITPub博客

首页 > 数据库 > Oracle > When does 'NOLOGGING' attribute work on a table?

When does 'NOLOGGING' attribute work on a table?

原创 Oracle 作者:puber 时间:2007-06-05 14:28:55 0 删除 编辑
NOLOGGING is supported in only a subset of the locations that support LOGGING. Only
the following operations support the NOLOGGING mode:
DML:
■ Direct-path INSERT (serial or parallel) resulting either from an INSERT or a
MERGE statement. NOLOGGING is not applicable to any UPDATE operations
resulting from the MERGE statement.
■ Direct Loader (SQL*Loader)

DDL:
■ CREATE TABLE ... AS SELECT
■ CREATE TABLE ... LOB_storage_clause ... LOB_parameters ... NOCACHE |
CACHE READS
■ ALTER TABLE ... LOB_storage_clause ... LOB_parameters ... NOCACHE |
CACHE READS (to specify logging of newly created LOB columns)
■ ALTER TABLE ... modify_LOB_storage_clause ... modify_LOB_parameters
... NOCACHE | CACHE READS (to change logging of existing LOB columns)
■ ALTER TABLE ... MOVE
■ ALTER TABLE ... (all partition operations that involve data movement)
– ALTER TABLE ... ADD PARTITION (hash partition only)
– ALTER TABLE ... MERGE PARTITIONS
– ALTER TABLE ... SPLIT PARTITION
– ALTER TABLE ... MOVE PARTITION
– ALTER TABLE ... MODIFY PARTITION ... ADD SUBPARTITION
– ALTER TABLE ... MODIFY PARTITION ... COALESCE SUBPARTITION
■ CREATE INDEX
■ ALTER INDEX ... REBUILD
■ ALTER INDEX ... REBUILD [SUB]PARTITION
■ ALTER INDEX ... SPLIT PARTITION
For objects other than LOBs, if you omit this clause, then the logging attribute of the
object defaults to the logging attribute of the tablespace in which it resides.
For LOBs, if you omit this clause:
■ If you specify CACHE, then LOGGING is used (because you cannot have CACHE
NOLOGGING).
■ If you specify NOCACHE or CACHE READS, then the logging attribute defaults to the
logging attribute of the tablespace in which it resides.
NOLOGGING does not apply to LOBs that are stored inline with row data. That is, if
you specify NOLOGGING for LOBs with values less than 4000 bytes and you have not
disabled STORAGE IN ROW, then Oracle ignores the NOLOGGING specification and
treats the LOB data the same as other table data.


The NOLOGGING clause also specifies that subsequent direct loads using SQL*Loader
and direct load INSERT operations are not logged. Subsequent DML statements
(UPDATE, DELETE, and conventional path insert) are unaffected by the NOLOGGING
attribute of the table and generate redo.
[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/220679/viewspace-917484/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: Oracle10g OFA
请登录后发表评论 登录
全部评论
  • 博文量
    2
  • 访问量
    43843

最新文章