问题:归档日志只记录DDL,不记得DML。1、安装Logminer数据包。C:\Workspace\GetFiles\bin sqlplus /nologSQL*Plus: Release 10.2.0.3.0 - Production on 星期二 7月 12 17:11:49 2011Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.SQL> conn / as sysdba
已连接。
SQL> @C:\Oracle\product\10.2.0\db_1\RDBMS\ADMIN\dbmslm.sql
程序包已创建。
授权成功。SQL> @C:\Oracle\product\10.2.0\db_1\RDBMS\ADMIN\dbmslmd.sql
程序包已创建。2、设置路径SQL> ALTER SYSTEM SET UTL_FILE_DIR='C:\Oracle\product\10.2.0\db_1\sjjhDict' SCOPE=SPFILE;系统已更改。3、启动自动归档模式SQL> alter database archivelog;数据库已更改。4、查看模式SQL> archive log list
数据库日志模式            存档模式
自动存档             启用
存档终点            USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列     10
下一个存档日志序列   12
当前日志序列           125、创建数据库字典
SQL> exec sys.dbms_logmnr_d.build(dictionary_filename=>'C:\Oracle\product\10.2.0\db_1\sjjhDict\sjjhDict.ora',dictionary_location=>'C:\Oracle\product\10.2.0\db_1\sjjhDict');
 
PL/SQL procedure successfully completed6、创建数据库表CREATE TABLE "NEWS_B" 
(  
  "NID" NUMBER, 
  "NTITLE" VARCHAR2(200), 
  "NTIME" DATE, 
  "NAUTHOR" NUMBER, 
  "NCONTENT" VARCHAR2(4000), 
  PRIMARY KEY ("NID")
)7、添加数据,进行DML操作insert into news_b (NID, NTITLE, NTIME, NAUTHOR, NCONTENT, ROWID)
values (1, '1', to_date('12-07-2011', 'dd-mm-yyyy'), 1, '1', 'AAAMoiAAEAAAABdAAA');insert into news_b (NID, NTITLE, NTIME, NAUTHOR, NCONTENT, ROWID)
values (2, '2', to_date('12-07-2011', 'dd-mm-yyyy'), 2, '2', 'AAAMoiAAEAAAABdAAB');insert into news_b (NID, NTITLE, NTIME, NAUTHOR, NCONTENT, ROWID)
values (3, '3', to_date('12-07-2011', 'dd-mm-yyyy'), 3, '3', 'AAAMoiAAEAAAABdAAC');commit;8、启动Logminer分析Exec sys.dbms_logmnr.add_logfile('C:\Oracle\product\10.2.0\oradata\hux\REDO01.LOG',sys.dbms_logmnr.NEW);
Exec sys.dbms_logmnr.add_logfile('C:\Oracle\product\10.2.0\oradata\hux\REDO02.LOG',sys.dbms_logmnr.ADDFILE);
Exec sys.dbms_logmnr.add_logfile('C:\Oracle\product\10.2.0\oradata\hux\REDO03.LOG',sys.dbms_logmnr.ADDFILE);
Exec sys.dbms_logmnr.start_logmnr(OPTIONS=>SYS.DBMS_LOGMNR.COMMITTED_DATA_ONLY,DictFileName=>'C:\Oracle\product\10.2.0\db_1\sjjhDict\sjjhDict.ora');--------------------------------------------------------------------
SQL> SELECT SQL_REDO,SQL_UNDO,OPERATION,TIMESTAMP,ROW_ID,SEG_OWNER,SEG_NAME FROM SYS.V_$LOGMNR_CONTENTS WHERE SEG_OWNER='HUX' AND SEG_NAME='NEWS_B';
 
SQL_REDO                                                                         SQL_UNDO                                                                         OPERATION                        TIMESTAMP   ROW_ID             SEG_OWNER                        SEG_NAME
-------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -------------------------------- ----------- ------------------ -------------------------------- --------------------------------------------------------------------------------
                                                                                                                                                                  DDL                              2011/7/12 1 AAAAAAAAAAAAAAAAAB HUX                              NEWS_B
CREATE TABLE "NEWS_B"                                                                                                                                                                                                                                              
(                                                                                                                                                                                                                                                                  
  "NID" NUMBER,                                                                                                                                                                                                                                                    
  "NTITLE" VARCHAR2(200),                                                                                                                                                                                                                                          
  "NTIME" DATE,                                                                                                                                                                                                                                                    
  "NAUTHOR" NUMBER,                                                                                                                                                                                                                                                
  "NCONTENT" VARCHAR2(4000),                                                                                                                                                                                                                                       
  PRIMARY KEY ("NID")                                                                                                                                                                                                                                              
)                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                   
;                                                                                                                                                                                                                                                                  
 
SQL>10、执行DDL语句SQL> TRUNCATE TABLE NEWS_B;
 
Table truncated
== 下面接 #1 楼==

解决方案 »

  1.   

    == 接楼上 ==
    11、再次分析SQL> SELECT SQL_REDO,SQL_UNDO,OPERATION,TIMESTAMP,ROW_ID,SEG_OWNER,SEG_NAME FROM SYS.V_$LOGMNR_CONTENTS WHERE SEG_OWNER='HUX' AND SEG_NAME='NEWS_B';
     
    SQL_REDO                                                                         SQL_UNDO                                                                         OPERATION                        TIMESTAMP   ROW_ID             SEG_OWNER                        SEG_NAME
    -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -------------------------------- ----------- ------------------ -------------------------------- --------------------------------------------------------------------------------
                                                                                                                                                                      DDL                              2011/7/12 1 AAAAAAAAAAAAAAAAAB HUX                              NEWS_B
    CREATE TABLE "NEWS_B"                                                                                                                                                                                                                                              
    (                                                                                                                                                                                                                                                                  
      "NID" NUMBER,                                                                                                                                                                                                                                                    
      "NTITLE" VARCHAR2(200),                                                                                                                                                                                                                                          
      "NTIME" DATE,                                                                                                                                                                                                                                                    
      "NAUTHOR" NUMBER,                                                                                                                                                                                                                                                
      "NCONTENT" VARCHAR2(4000),                                                                                                                                                                                                                                       
      PRIMARY KEY ("NID")                                                                                                                                                                                                                                              
    )                                                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                                                       
    ;                                                                                                                                                                                                                                                                  
     
                                                                                                                                                                      DDL                              2011/7/12 1 AAAAAAAAAAAAAAAAAB HUX                              NEWS_B
    TRUNCATE TABLE NEWS_B                                                                                                                                                                                                                                              
    ;                                                                                                                                                                                                                                                                  
     
    SQL>12、查看表LOGGING状态SQL> select logging from dba_tables t where t.table_name=upper('NEWS_B');
     
    LOGGING
    -------
    YES
     
    SQL>===结束===各位,这个问题困扰我快一周了!真的不知道是怎么回事。。请大家帮帮忙!