欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

增大Oracle REDO LOG的SIZE

程序员文章站 2022-04-22 14:57:14
...

偶然在网上看到介绍如何增大ORACLE REDO LOG的SIZE,于是很好奇在什么情况下需要增大这个值,问了问前辈。他让我看v$system_

  偶然在网上看到介绍如何增大Oracle REDO LOG的SIZE,于是很好奇在什么情况下需要增大这个值,问了问前辈。他让我看v$system_event中是否有checkpoint completed事件,有就调大一点。

  1.先查看现在的REDO GROUP及状态:

  select * from v$log;

  GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS

  ---------- ---------- ---------- ---------- ---------- --- ----------------

  FIRST_CHANGE# FIRST_TIME

  ------------- --------------

  1 1 5089 209715200 1 YES ACTIVE

  212991051 27-1月 -10

  2 1 5090 209715200 1 NO CURRENT

  212991289 27-1月 -10

  3 1 5087 209715200 1 YES INACTIVE

  212991039 27-1月 -10

  2.先将状态为INACTIVE的日志组删掉(redo log group 3):

  alter database drop logfile G:\oracle\oradata\orcl\redo03.log';

  如果没有状态为INACTIVE的,,则通过切换日志或强制检查点,将其中的一个日志组变成INACTIVE状态:

  alter system switch logfile;

  ALTER SYSTEM CHECKPOINT;--注意,如果是在RAC环境,要加上GLOBAL或LOCAL关键字

  切换完了,还要再查看一下日志组状态:

  select * from v$log;

  3.将删掉的日志组添加回去,但SIZE调大(如REDO03原来的SIZE是50M,我现在把它改为200M):

  alter database add logfile group 3 ('G:\oracle\oradata\orcl\redo03.log') size 200M reuse;

  4.重复上面的步骤(一个一个删,然后一个一个添加回去),直到将全部的日志组的REDO LOG文件调大为止。

  5.注意:不能够通过添加日志组成员的方法来实现调大REDO文件SIZE的目的,因为同一个日志组中,所有成员的FILE SIZE必须是一样的。

增大Oracle REDO LOG的SIZE