nologging需要每次都得在insert里加/*+append*/才起作用;我想对表做一个设置,希望以后对它的任何dml操作都不产生日志,怎么做? 
谢谢1!

解决方案 »

  1.   

    不产生日志是不可能的 用nologging   只能减少log 
      

  2.   


    All the following statements will generate redo despite the fact the table is in NOLOGGING mode:
    - INSERT INTO new_table_nolog_test ...,
    - UPDATE new_table_nolog_test SET ...,
    - DELETE FROM new_table_nolog_test ..The following will not generate redo (except from dictionary changes and indexes):
    - INSERT /*+APPEND+/ ...
    - ALTER TABLE new_table_nolog_test MOVE ...
    - ALTER TABLE new_table_nolog_test MOVE PARTITION ...Oracle的机制不允许. Nologging到底何时才能生效------------------------------------------------------------------------------ 
    Blog: http://blog.csdn.net/tianlesoftware 
    网上资源: http://tianlesoftware.download.csdn.net 
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx 
    DBA1 群:62697716(满); DBA2 群:62697977
      

  3.   

    nologging并不是不产生redo log,而是尽可能少的产生log要了解redo的目的。crash/isntance recovery
      

  4.   

    dml不产生日志,如果出错了就无法恢复。这样就不符合数据库本身的定义了。