设置oracle数据库redo日志大小

本文介绍了如何查看和管理Oracle数据库的redo日志,包括检查日志组成员、状态,增加和删除日志组,以及在操作系统层面操作redo日志文件。

1、查看当前日志组成员
sql> select member from v$logfile;
2、查看当前日志组状态

sql> select group#,members,bytes/1024/1024.status from v$log;

3、增加日志组

sql> alter database add logfile group 4 ('/opt/oracle/oradata/oral/redo04.log') size 200M;
sql> alter database add logfile group 5 ('/opt/oracle/oradata/oral/redo05.log') size 200M;
sql> alter database add logfile group 6 ('/opt/oracle/oradata/oral/redo06.log') size 200M;
sql> alter system switch logfile;
system altered
sql>select group#,members,bytes/1024/1024.status from v$log;

CURRENT:指当前的日志文件,在进行实例恢复时是必须的
ACTIVE:是指活动的非当前日志,在进行实例恢复时会被用到。Active状态意味着Checkpoint尚未完成,因此该日志文件不能被覆盖。
INACTIVEL:是非活动日志,在实例恢复时不在需要,但在介质恢复时可能需要
UNUSED:表示该日志从未被写入,可能是刚添加的或者RESETLOGS后被重置
4、删除旧的日志组

sql> alter database drop logfile group 1;
sql> alter database drop logfile group 2;
sql> alter database drop logfile group 3;
Database altered
可能会报错如下
ORA-01624:log 1 needed for crash recovery of instance orcl(thread 1)
ORA-00312:online log 1 thread 1 :'/opt/oracle/oradata/orcl/redo01.log'
原因:因为日志成员处在active状态,不能drop掉的,在执行alter system switch logfile;
解决办法:切换日志组,然后重新产出就可以了
sql> alter system switch logfile;
sql> select group#,members,bytes/1024/1024,stuatus from v$log;
sql> alter database drop logfile group 1;

5、再查看日志组

sql> select group#,members,bytes/1024/1024,stuatus from v$log;

6、在操作系统下删除之前的redolog日志文件
oracle@suse-01-27:~>rm -r /opt/oracle/oradata/orcl/redo0[1-3].log

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值