redo online日志文件
查看日志
sys@PROD>select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME
---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- --------- ------------ ---------
2 1 18 52428800 512 1 NO CURRENT 234742 09-JUN-17 2.8147E+14
1 1 17 52428800 512 1 NO INACTIVE 234516 09-JUN-17 234742 09-JUN-17
调整频率的方法:
调整联机日志的大小
调整联机组的个数
管理联机日志文件:
记录所有数据块的变化
对数据库进行恢复
联机日志以组为单位工作,每组至少
1个成员
组之间时切换运行
数据库至少需要
2组联机日志
每组下可以有多个成员,成员之间是镜像关系
日志成员的信息保存在控制文件
查看联机日志的工作状态(只有处于inactive状态的日志,才能被再次利用)
select * from v$log;
INACTIVE
无活动
CURRENT
当前使用
ACTIVE
活动
日志切换指标
推荐的日志切换频率
15~30分钟切换一次
日志大小指标
联机日志:500M左右
非联机日志:无所谓
查看日志频率:
select to_number(to_char(FIRST_TIME,'yyyymmddhh24')) FIRST_TIME,count(*) from v$log_history group by to_number(to_char(FIRST_TIME,'yyyymmddhh24')) order by 1;
在增加日志组的时候放大成员的大小:
alter database add logfile group 3 '/home/oracle/prod/redo03.log' size 100m;
alter database add logfile group 4 '/home/oracle/prod/redo04.log' size 100m;
使用reuse关键字,重建日志成员
alter database add logfile group 1 '/home/oracle/prod/redo01.log' size 100m reuse;
规则:
删除成员小的组
当前组不能删除
活动组不能删除
只剩两组,任何一组都不能删除(不能删除文件)
alter database drop logfile group 1;
alter database drop logfile group 2;
手工切换日志
alter system switch logfile;
手工产生检查点
alter system checkpoint;
增加成员
alter database add logfile member '/home/oracle/prod/redo03b.log' to group 3,
'/home/oracle/prod/redo04b.log' to group 4;
删除成员
当前组的成员不能删除
每一组的最后一个成员不能删除
alter database drop logfile member '/home/oracle/prod/redo03.log';
移动日志文件
1.移动文件
shut immediate
startup mount
mv /home/oracle/prod/redo04.log /u01/app/oracle/oradata/prod/redo04
2.修改控制文件中的指针
alter database rename file '/home/oracle/prod/redo04.log' to '/u01/app/oracle/oradata/prod/redo04';
alter database open;
清空日志:当前组和活动组不能清空
alter database clear logfile group 5;
==========================================================================
本人能力有限,存在书写,表达错误请指正。