不知道这段日志够不够,请大人帮忙。肯定结贴而且 速度
Thu Apr 30 07:05:43 2009
Thread 1 advanced to log sequence 41
  Current log# 1 seq# 41 mem# 0: /data01/oradata/ora9/redo01.log
Fri May  1 04:36:54 2009
ORACLE Instance ORA9 - Can not allocate log, archival required
Fri May  1 04:36:54 2009
ARCH: Connecting to console port...
Thread 1 cannot allocate new log, sequence 42
All online logs needed archiving
  Current log# 1 seq# 41 mem# 0: /data01/oradata/ora9/redo01.log
Fri May  1 20:49:33 2009
Shutting down instance: further logons disabled
Shutting down instance (immediate)
License high water  = 36

解决方案 »

  1.   

    9i的库?开自动归档没有?archive log list;没有的话,就手动归档,或者转为自动归档。
      

  2.   

    归档空间是不是用完了,你查看一下,linux  下 df  -h
      

  3.   

    把手动改成自动不就行了。先看看是不是这个原因。
    你执行archive log list;
      

  4.   

    文件系统              容量  已用 可用 已用% 挂载点
    /dev/cciss/c0d0p8      15G  2.8G   12G  20% /
    /dev/cciss/c0d0p7     9.7G  3.4G  5.9G  37% /home
    /dev/cciss/c0d0p6      20G  212M   19G   2% /opt
    /dev/cciss/c0d0p5     9.7G  151M  9.1G   2% /tmp
    /dev/cciss/c0d0p3      30G   11G   18G  37% /data01
    /dev/cciss/c0d0p2      45G  181M   43G   1% /data02
    /dev/cciss/c0d0p1     483M   16M  442M   4% /boot
    tmpfs                 4.0G     0  4.0G   0% /dev/shm
      

  5.   

    那可能不是自动归档的原因了。
    可能是你的日志组太少,或者大小太小了。
    除了看archive log list,你再贴出v$log的内容。
      

  6.   

    如果归档撑死的原因,按下面步骤做2、可以手工来处理,步骤如下 
        1)将/oracle下的相关ARCHIVELOG日志文件移到别的文件系统下(保留一段时间的ARCHIVELOG日志即可,其他的可移走,用系统命令mv移走)。然后打包、压缩,备份到介质上,此时可将这些移出的文件删除。注意:别在原来的/oracle打包了,否则空间占满了就有些麻烦了。 
        2)以oracle用户登录,执行rman target /。如有多个实例此时执行rman target 用户名/密码@实例名,进入rman 
        3)在rman中执行 
        RMAN>list archivelog all;            /*列出所有的归档日志文件 
        RMAN>crosscheck archivelog all;      /*与物理归档日志文件保持同步,之前移走了一部分文件,因此执行此命令后会在/oracle目录下找不到的归档日志标记为expired 
        RMAN>list expired archivelog all;    /*列出所有expired(过期)的归档日志文件,此时你就可看到移走的归档日志文件均被标记为expired 
        RMAN>delete expired archivelog all;  /*在oracle中删除所有过期的expired文件 
        RMAN>list archivelog all;            /*再列出所有的归档日志文件,就可发现移走的日志文件被删掉了 
        RMAN>exit                            /*退出 
      

  7.   

    如果redo小了,少了,可以对redo日志增加。
      

  8.   

    事务量大, REDO GROUP 数量少, 增加即可.
      

  9.   

    archive log list 命令看一下是不是为自动归档。如果是归档日志太大,磁盘空间不过,转移一部分,或者备份数据库后删除。
      

  10.   

    检查是不是自动归档SQL>archive log list查看
    Automatic archival是不是打开的
    Database log mode              Archive Mode
    Automatic archival             Disabled如果不是的Enable,意味着手工归档
    当手工归档的时候,redo日志组在全部切换完以后,如果你alter system archive log current进行手工归档的话,由于最前的一个日志没有归档,当时
    新的redo由需要写进去,由于最前的一个还是active和非归档状态,所以不能写进去,这样就会造成挂机状态。你可以运行手工归档
    SQL>alter system archive log current;或者是自动归档
    SQL>alter system archive log start;
      

  11.   

    执行 archive log list命令的权限 不够, 现在正在要求dba账户。
      

  12.   

    通过查询才v$database也可以看到这个flag.