ITPub博客

首页 > 数据库 > Oracle > Thread 1 cannot allocate new log,Checkpoint not complete

Thread 1 cannot allocate new log,Checkpoint not complete

原创 Oracle 作者:wzz123snow 时间:2014-01-24 10:41:53 0 删除 编辑
alert 日志中有这个错误
Thread 1 cannot allocate new log, sequence 319708
Checkpoint not complete


查看下,当前数据库的每组日志大小为50M,每天切换300次左右。
对此,ORACLE给出的提示:
This message indicates that Oracle wants to reuse a redo log file, but the current checkpoint position is still in that log.
In this case, Oracle must wait until the checkpoint position passes that log. 
Because the incremental checkpoint target never lags the current log tail by more than 90% of the smallest log file size, 
this situation may be encountered if DBWR writes too slowly, or if a log switch happens before the log is completely full,
or if log file sizes are too small. When the database waits on checkpoints,redo generation is stopped until the log switch is done.

ORACLE给出的建议:
Add additional log group
Increase size of redo logs


Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 
Connected as sys@SG8 AS SYSDBA
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         1          1     319964   52428800          1 YES      INACTIVE            3864251677 1/24/2014 7
         2          1     319965   52428800          1 NO       CURRENT             3864256297 1/24/2014 8
         3          1     319963   52428800          1 YES      INACTIVE            3864240823 1/24/2014 7
 


SQL> select bytes/1024/1024 from v$log;
 
BYTES/1024/1024
---------------
             50
             50
             50
 
SQL> select * from v$logfile;
 
    GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE
---------- ------- ------- -------------------------------------------------------------------------------- ---------------------
         3         ONLINE  D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO03.LOG                               NO
         2         ONLINE  D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO02.LOG                               NO
         1         ONLINE  D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO01.LOG                               NO
 
SQL> alter database add logfile group 4 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO04.LOG' size 100m;--这组日志加小了,一会儿删掉。
 
Database altered
 
SQL> alter database add logfile group 5 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO05.LOG' size 300m;
 
Database altered
 
SQL> alter database add logfile group 6 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO06.LOG' size 300m;
 
Database altered
 
SQL> alter database add logfile group 7 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO07.LOG' size 300m;
 
Database altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         1          1     319964   52428800          1 YES      INACTIVE            3864251677 1/24/2014 7
         2          1     319965   52428800          1 NO       CURRENT             3864256297 1/24/2014 8
         3          1     319963   52428800          1 YES      INACTIVE            3864240823 1/24/2014 7
         4          1          0  104857600          1 YES      UNUSED                       0 
         5          1          0  314572800          1 YES      UNUSED                       0 
         6          1          0  314572800          1 YES      UNUSED                       0 
         7          1          0  314572800          1 YES      UNUSED                       0 
 
7 rows selected
 
SQL> alter system switch logfile;
 
System altered
 
SQL> alter system switch logfile;
 
System altered
 
SQL> alter system switch logfile;
 
System altered
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         1          1     319964   52428800          1 YES      INACTIVE            3864251677 1/24/2014 7
         2          1     319965   52428800          1 YES      ACTIVE              3864256297 1/24/2014 8
         3          1     319963   52428800          1 YES      INACTIVE            3864240823 1/24/2014 7
         4          1     319966  104857600          1 YES      ACTIVE              3864260234 1/24/2014 8
         5          1     319967  314572800          1 YES      ACTIVE              3864260236 1/24/2014 8
         6          1     319968  314572800          1 YES      ACTIVE              3864260239 1/24/2014 8
         7          1     319969  314572800          1 NO       CURRENT             3864260241 1/24/2014 8
 
7 rows selected
 
SQL> alter database drop logfile group 1;
 
Database altered
 
SQL> alter database drop logfile group 3;
 
Database altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319965   52428800          1 YES      ACTIVE              3864256297 1/24/2014 8
         4          1     319966  104857600          1 YES      ACTIVE              3864260234 1/24/2014 8
         5          1     319967  314572800          1 YES      ACTIVE              3864260236 1/24/2014 8
         6          1     319968  314572800          1 YES      ACTIVE              3864260239 1/24/2014 8
         7          1     319969  314572800          1 NO       CURRENT             3864260241 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319970   52428800          1 NO       CURRENT             3864260514 1/24/2014 8
         4          1     319966  104857600          1 YES      INACTIVE            3864260234 1/24/2014 8
         5          1     319967  314572800          1 YES      INACTIVE            3864260236 1/24/2014 8
         6          1     319968  314572800          1 YES      INACTIVE            3864260239 1/24/2014 8
         7          1     319969  314572800          1 YES      ACTIVE              3864260241 1/24/2014 8
 
SQL> alter database drop logfile group 4;
 
Database altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319970   52428800          1 NO       CURRENT             3864260514 1/24/2014 8
         5          1     319967  314572800          1 YES      INACTIVE            3864260236 1/24/2014 8
         6          1     319968  314572800          1 YES      INACTIVE            3864260239 1/24/2014 8
         7          1     319969  314572800          1 YES      ACTIVE              3864260241 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319970   52428800          1 YES      ACTIVE              3864260514 1/24/2014 8
         5          1     319971  314572800          1 NO       CURRENT             3864261051 1/24/2014 8
         6          1     319968  314572800          1 YES      INACTIVE            3864260239 1/24/2014 8
         7          1     319969  314572800          1 YES      ACTIVE              3864260241 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319970   52428800          1 YES      ACTIVE              3864260514 1/24/2014 8
         5          1     319971  314572800          1 YES      ACTIVE              3864261051 1/24/2014 8
         6          1     319972  314572800          1 NO       CURRENT             3864261053 1/24/2014 8
         7          1     319969  314572800          1 YES      ACTIVE              3864260241 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319970   52428800          1 YES      ACTIVE              3864260514 1/24/2014 8
         5          1     319971  314572800          1 YES      ACTIVE              3864261051 1/24/2014 8
         6          1     319972  314572800          1 YES      ACTIVE              3864261053 1/24/2014 8
         7          1     319973  314572800          1 NO       CURRENT             3864261132 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319974   52428800          1 NO       CURRENT             3864261156 1/24/2014 8
         5          1     319971  314572800          1 YES      ACTIVE              3864261051 1/24/2014 8
         6          1     319972  314572800          1 YES      ACTIVE              3864261053 1/24/2014 8
         7          1     319973  314572800          1 YES      ACTIVE              3864261132 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319974   52428800          1 YES      ACTIVE              3864261156 1/24/2014 8
         5          1     319975  314572800          1 NO       CURRENT             3864261164 1/24/2014 8
         6          1     319972  314572800          1 YES      ACTIVE              3864261053 1/24/2014 8
         7          1     319973  314572800          1 YES      ACTIVE              3864261132 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319974   52428800          1 YES      ACTIVE              3864261156 1/24/2014 8
         5          1     319975  314572800          1 YES      ACTIVE              3864261164 1/24/2014 8
         6          1     319976  314572800          1 NO       CURRENT             3864261181 1/24/2014 8
         7          1     319973  314572800          1 YES      ACTIVE              3864261132 1/24/2014 8
 
SQL> alter system switch logfile;
 
System altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         2          1     319974   52428800          1 YES      INACTIVE            3864261156 1/24/2014 8
         5          1     319975  314572800          1 YES      ACTIVE              3864261164 1/24/2014 8
         6          1     319976  314572800          1 YES      ACTIVE              3864261181 1/24/2014 8
         7          1     319977  314572800          1 NO       CURRENT             3864261244 1/24/2014 8
 
SQL> alter database drop logfile group 2;
 
Database altered
 
SQL> select * from v$log;
 
    GROUP#    THREAD#  SEQUENCE#      BYTES    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- -----------
         5          1     319975  314572800          1 YES      ACTIVE              3864261164 1/24/2014 8
         6          1     319976  314572800          1 YES      ACTIVE              3864261181 1/24/2014 8
         7          1     319977  314572800          1 NO       CURRENT             3864261244 1/24/2014 8
 
SQL> select * from v$logfile;
 
    GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE
---------- ------- ------- -------------------------------------------------------------------------------- ---------------------
         5         ONLINE  D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO05.LOG                               NO
         6         ONLINE  D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO06.LOG                               NO
         7         ONLINE  D:\ORACLE\PRODUCT\10.2.0\ORADATA\AGENCY\REDO07.LOG                               NO
 
SQL> select bytes/1024/1024 from v$log;
 
BYTES/1024/1024
---------------
            300
            300
            300

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

上一篇: log_archive_format
请登录后发表评论 登录
全部评论

注册时间:2012-11-13

  • 博文量
    27
  • 访问量
    403715