oracle——redo日志

 查看重做日志按组排序:select * from v$logfile order by GROUP#;
1.创建重做日志及成员
alter database database_name
add logfile group n
filename size m
参数意义:
   database_name //需要修改的数据库名,省略则表示当前数据库
   n 表示创建重做日志的组号,组号在重做日志组中是唯一的
   filename  // 日志文件组存储的默认位置
   m //日志文件组的大小,默认的大小是50M
2.创建重做日志成员
alter database database_name
add logfile member
'/data/oracle/newlog.log'
to group 2;
3.删除日志文件组
1)无论日志组中有多少个成员,一个数据库至少需要两个日志组
2)只能删除inactive状态的日志组,如果想要删除current状态的必须手工切换到inactive状态
3)如果数据库处于归档模式,在删除前必须保证它已经被归档,可以查询v$log看是否归档,
      select group#,archived,status from v$log;
  删除:alter database database_name
         drop logfile
         group n

注:删除只是将他们在数据字典和控制文件中将他们的记录信息删除了,并不会物理的删除操作系统中的相应文件,需手工手工在操作系统删除相应的文件。

1.修改redo日志文件的位置和名称
1)shutdown 关闭数据库
2)在操作系统中重命名redo日志文件或者复制到新的位置上
3)startup mount 重启数据库
4)rename file 重设名称和路径
   alter database rename file
  2  '/data/oracle/newredofile1.log'
  3  to
  4  '/data/oracle/newredo01.log';


Database altered.


SQL> select member from v$logfile;


MEMBER
--------------------------------------------------------------------------------
/data/oracle/oradata/orcl/redo03.log
/data/oracle/oradata/orcl/redo02.log
/data/oracle/oradata/orcl/redo01.log
/data/oracle/newredo01.log
/data/oracle/newredomember1.log


2.清空重做日志文件
alter database database_name 
clear logfile group n
如果redo日志没有归档,则需要添加unarchived关键字
alter database database_name
clear unarchived logfile group n
注:如果清空的redo日志未归档可能造成数据丢失,所以应提前备份数据。


3.重做日志的切换
在某些特殊的情况下lgwr不自动切换到下一个重做日志组,需要手工切换
当未写满时强制执行切换下一个如下:alter system switch logfile
注:每次切换都会在告警文件中记录,无论是自动还是手动


4.重做日志的大小
REDO日志大小不能低于4M,因为一个REDO的一个BLOCK为512 bytes,日志文件要求不低于8192个 blocks,所以REDO日志大小不低于4M。
如果低于4M-即小于8192个blocks,
会报错: ORA-00336: log file size 2048blocks is less than minimum 8192 blocks


5.REDO日志特殊情况下的处理:
当前重做日志组不能删除,如要删除,先用alter system switch logfile切换。
每个重做日志组至少有一个成员才能正常工作,归档模式时要删除的成员未被归档完时无法删除。从系统中删除成员后,操作系统文件除OMF方式管理外都存在,要从操作系统层面删除。
用在redo日志文件崩溃系统挂起,清除redo日志文件使用 alter database clear logfile group 3;
如崩溃的redo日志文件已不能归档,使用命令清除已崩溃的redo日志文件    alter database clear unarchived logfilegroup 3;

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值