重建redo文件
需求背景
由于前期安装oracle时redo文件大小或者路径规划不合理需要进行修改,以便满足性能测试要求。redo文件规划大小建议与生产环境一致。
重做日志相关数据字典
1、v$log 记录数据库中有多少个重做日志组,每个组中有多少个成员、日志大小及状态
2、v$logfile 记录着每个日志组成员的属性、文件路径、文件名、状态等
操作步骤
1、查看现有日志组及重做文件大小
SQL> select group#,sequence#,bytes/1024/1024 sizeMB,members,status from v$log;
GROUP# SEQUENCE# SIZEMB MEMBERS STATUS
---------- ---------- ---------- ---------- ---------
1 27 50 1 INACTIVE
2 28 50 1 CURRENT
3 29 50 1 INACTIVE
STAUS状态值说明:
inactive:表示实例恢复已不再需要这组联机重做日志组了。
active:表示该组是活动的但不是当前组,实例恢复时需要这组日志。
current:表示该组日志是当前组,该联机重做日志组是活动的,当前正在使用。
unused:表示该日志组从未写过,是重做日志刚刚添加到状态。
2、查看当前重做日志文件的状态和路径
SQL> select group#,status,type,member from v$logfile;
GROUP# STATUS TYPE MEMBER
---------- ------- ------- ---------------------------------------------
3 ONLINE /home/oracle/oradata/ora11g/redo03.log
2 ONLINE /home/oracle/oradata/ora11g/redo02.log
1 ONLINE /home/oracle/oradata/ora11g/redo01.log
STATUS状态说明:
空白:表示该文件正在使用。
stale:表示该文件中的内容是不完全的。
invalid:表示该文件是不可以被访问的。
deleted:表示该文件已不再有用了。
3、新增创建重做日志文件组group 4、group 5、group 6,文件大小设置为1000M。
SQL> alter database add logfile group ('/dev/vgoracle/lvredo4.log') size 1000M;
Database altered.
SQL> alter database add logfile group ('/dev/vgoracle/lvredo5.log') size 1000M;
Database altered.
SQL> alter database add logfile group ('/dev/vgoracle/lvredo6.log') size 1000M;
Database altered.
4、执行alert system switch logfile命令进行多次切换,直至group 4或者group 5日志组的状态为current。
SQL> alter system switch logfile;
System altered.
SQL> select group#,sequence#,bytes// sizeMB,members,status from v$log;
GROUP# SEQUENCE# SIZEMB MEMBERS STATUS
---------- ---------- ---------- ---------- ---------
INACTIVE
ACTIVE
INACTIVE
CURRENT
NOUSE
NOUSE
5、执行alter system checkpoint手工执行同步数据,将redo文件记录写入数据文件。确保group 1、group 2、group 3文件组状态为INACTIVE。
SQL> select group#,sequence#,bytes// sizeMB,members,status from v$log;
GROUP# SEQUENCE# SIZEMB MEMBERS STATUS
---------- ---------- ---------- ---------- ---------
INACTIVE
INACTIVE
INACTIVE
CURRENT
NOUSE
NOUSE
6、当日志组处于INACTIVE状态是,可以执行drop操作删除。对应的OS文件需手工删除。
SQL> alter database drop logfile group 1; Database altered. SQL> alter database drop logfile group 2; Database altered. SQL> alter database drop logfile group 3; Database altered.
7、操作完成。重新查看重做日志文件组状态
SQL> select group#,sequence#,bytes// sizeMB,members,status from v$log;
GROUP# SEQUENCE# SIZEMB MEMBERS STATUS
---------- ---------- ---------- ---------- ---------
ACTIVE
NOUSE
NOUSE
说明:如果习惯使用日志组1/2/3,可以按照上述过程重新操作一遍即可。
8、清理被替换的redo文件
rm /home/oracle/oradata/ora11g/redo01.log
rm /home/oracle/oradata/ora11g/redo02.log
rm /home/oracle/oradata/ora11g/redo03.log
重建redo文件的更多相关文章
- 【练习】trace文本重建控制文件
这个小练习是针对控制文件全部丢失后怎么能快速的重建一个控制文件,快速的起库 1.备份控制文件到trace下 SQL> alter database backup controlfile to t ...
- Oracle 重建控制文件
前些天在做Oracle数据库恢复测试时,因为一些异常操作导致控制文件出了问题,数据库无法正常使用,这里记录一下重建控制文件的操作 一.使用sysdba用户登入数据库 此时普通用户已无法链接数据库 二. ...
- 【恢复】 Redo文件丢失的恢复
第一章 Redo文件丢失的恢复 1.1 online redolog file 丢失 联机Redo日志是Oracle数据库中比较核心的文件,当Redo日志文件异常之后,数据库就无法正常启动,而且有丢 ...
- Oracle 重建控制文件一例
环境:OEL 5.7 + Oracle 10.2.0.5 背景:在Oracle的运维过程中,时常会遇到一些场景是需要重建控制文件才可以解决的.本文的场景可以通过复制控制文件到新路径,运行一段时间后,再 ...
- 【翻译自mos中文文章】重建控制文件的方法
重建控制文件的方法 參考原文: How to Recreate a Controlfile (Doc ID 735106.1) 适用于: Oracle Database - Enterprise Ed ...
- 简单记录一次REDO文件损坏报错 ORA-00333重做日志读取块出错
一.故障描写叙述 首先是实例恢复须要用到的REDO文件损坏 二.解决方法 1.对于非当前REDO或者当前REDO可是无活动事务使用下面CLEAR命令: 用CLEAR命令重建该日志文件SQL>al ...
- Oracle控制文件多路复用以及Oracle备份重建控制文件
控制文件中记录了oracle数据库的物理结构,也就是记录了数据库数据文件和日志文件的位置,控制文件中还记录了多种SCN,用这些SCN来确定数据文件和日志文件是否是正确的.如果不正确那么数据库就需要恢复 ...
- 转储oracle的redo文件
1.确定当前使用的redo文件 SQL> select member from v$logfile where group# = ( select group# from v$log where ...
- redo文件一
redo log files and redo log buffer redo log files的作用的是确保数据库崩溃之后能正确的恢复数据库,恢复数据库到一,致性的状态 redo log file ...
随机推荐
- SCCM 2012 R2实战系列之二:前提工作准备
在上一篇中,我们完成了SQL Server 2012的安装和配置.现在跟大家分享SCCM安装前的准备工作. 2.1 SCCM 2012 R2 准备工作 2.1.1 创建并分配System Manage ...
- C/C++ 与 Python 的通信
作者:Jerry Jho链接:https://www.zhihu.com/question/23003213/answer/56121859来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商 ...
- 在Ubuntu16.04下安装 labelImg
首先按照 http://www.linuxdiyf.com/linux/13934.html 和 http://www.linuxdiyf.com/linux/13934.html 在ubuntu ...
- 2-java内省机制(Introspector)
来一个简单的示例吧 package com.my.test; import java.beans.BeanInfo; import java.beans.Introspector; import ja ...
- ES6核心内容讲解
ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES2015. ...
- Hook技术之API拦截(API Hook)
一.实现过程 1.钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统. 2.在消息没有到达目的窗口前,钩子就捕获消息(即钩子函数先得到控制权). 3.钩子可以加工处理该消息,即钩子机制允许应 ...
- mint-ui 输入框按下按键执行查询
环境:vue.mint-ui 功能:一个输入框,按下按键之后就执行某个功能. 截图:一个输入框 输入框html: <mt-search v-model="query" can ...
- sqlserver表数据的修改
清除表数据 truncate table [表名称] 将表b中的一列数据,更新到表tableA 如: tableA .key tableA .value 123 124 tableB.k ...
- SpringBoot入门 (十) 发送邮件
本文记录学习在SpringBoot中发送邮件. 一 邮件发送过程 发送邮件是一个我们在项目中经常会用到的功能,如在用户注册时发送验证码,账户激活等都会用到.完整的一个邮件发送过程主要包含以下几个步骤: ...
- mysql中的sql_mode
mysql数据库的中有一个环境变量sql_mode,定义了mysql应该支持的sql语法,数据校验等!我们可以通过以下方式查看当前数据库使用的sql_mode: mysql> select @@ ...