重做日志的管理

来源:互联网 发布:淘宝试用中心有效果吗 编辑:程序博客网 时间:2024/05/17 22:51

日志自动切换要满足15-20分钟一次

查看切换时间

select to_char(first_time,'yyyy-mm-dd hh24:mi:ss'),group# from v$log;

如果小于15-20分钟,可以通过增加日志文件大小来增加时间。

alter database drop logfile group <dir>;

ho rm /u01/app/oracle/oradata/orcl/redo*<dir>*

alter database add logfile group <dir>  ('/u01/app/oracle/oradata/redo<dir>.log','/u01/app/oracle/oradata/orcl/redo<dir>.log') size 100m;

如果当前组不能删除,就切,切到能删除为止;


日志文件异常处理[日志不一致,日志丢失,日志损坏]

日志组,最好多有个成员。


日志不一致:

     alter database clear logfile group n; 清空不一致的,active current 状态不能清空

     alter database clear unarchived logfile group n;

日志文件丢失:

如果你的数据库是一致性关闭,你可以通过alter database clear group n;来恢复

非一致性关闭

使用隐藏参数解决:alter system set "_allow_resetlogs_corruption" =true scope=spfile;

startup mount;

alter database open resetlogs;

alter system "_allow_resetlogs_corruption" scope=spfile sid=’*‘;用完要干掉


归档模式下可以:recover database using backup controlfile

alter database open resetlog;

recover database;

非归档模式下:需要+隐藏参数和归档模式下的步骤

0 0