zoukankan      html  css  js  c++  java
  • ORA16038,ORA19809,ORA00312无法归档的解决方法

    源文档 <http://www.dbasky.net/>

      SQL>startup mount

      Total System Global Area 2097152000 bytes

      Fixed Size                  1268436 bytes

      Variable Size             536872236 bytes

      Database Buffers         1543503872 bytes

      Redo Buffers               15507456 bytes

      Database mounted

      SQL> alter database open;

      alter database open

      *

      ERROR at line 1:

      ORA-16038: log 3 sequence# 498 cannot be archived

      ORA-19809: limit exceeded for recovery files

      ORA-00312: online log 3 thread 1: '/opt/oracle/oradata/nuage/redo03.log'

       

      从上面不难看出数据库无法归档.那什么原因造成的呢?通过查看了alter的日志,分析在某个时点出现了异常随后找了相关的了解下情况,主要是开发人员在不正常的情况下关闭数据库,这样一来使得在没有运行完毕的SQL语句造成数据库线程停止.知道了原因接下来就解决问题吧!

      SQL> alter database clear unarchived logfile '/opt/oracle/oradata/nuage/redo03.log';

      Database altered.

       

      SQL>shutdown immediate

      Database closed.

      Database dismounted.

       

      SQL>startup mount

      Total System Global Area 2097152000 bytes

      Fixed Size                  1268436 bytes

      Variable Size             536872236 bytes

      Database Buffers         1543503872 bytes

      Redo Buffers               15507456 bytes

      Database mounted

      SQL> alter database open;

      Database altered.

      通过这次的故障给我们敲响警钟,在任何情况下都得正常的关闭数据库.

  • 相关阅读:
    MySQL锁系列3 MDL锁
    MySQL锁系列2 表锁
    MySQL锁系列1
    MySQL open table
    MySQL优化器join顺序
    MySQL优化器cost计算
    MySQL源码 优化器
    MySQL源码 解析器
    MySQL源码 数据结构hash
    微信小程序爬坑日记
  • 原文地址:https://www.cnblogs.com/buro79xxd/p/1682580.html
Copyright © 2011-2022 走看看