因为数据仓库ETL过程中,某个mapping的执行时间超过了一个小时,

select event,count(*) fromv$session_wait  group by event order bycount(*)  desc

发现日志切换占用了大量的时间,估尝试增大redo log的大小。

(1) redo log的大小可以影响  DBWR 和 checkpoint ;

(2)larger redo log files provide better performance. Undersized logfiles increase checkpoint activity and reduce performance.

大的log file可以提供更好的性能,小的logfile 会增加checkpoint 和降低性能;

(3)A rough guide is to switch log files at most once every 20 minutes.(推荐日志切换的时间不要超多20分钟).

通过查看 我有三组redolog 1/2/3每组两个成员状态都正常大小50m

select * from v$log ;

status 有几个值分别是:

  1. UNUSED(还没有使用过);
  2. CURRENT(正在使用);
  3. ACTIVE(Log isactive but is not the current log. It is needed for crash recovery);
  4. INACTIVE(Log is nolonger needed for instance recovery),

查看日志文件

select * from v$logfile ;

由于ORACLE并没有提供类似RESIZE的参数来重新调整REDO LOG FILE的大小,因此只能先把这个文件删除了,然后再重建。又由于ORACLE要求最少有两组日志文件在用,所以不能直接删除,必须要创建中间过渡的REDO LOG日志组。

1、创建3个新的日志组

ALTER DATABASE ADD LOGFILE GROUP 4('/usr/oracle/app/oradata/orcl/redo04a.log','/usr/oracle/app/oradata/orcl/redo04b.log') SIZE 2048M;

ALTER DATABASE ADD LOGFILE GROUP 5('/usr/oracle/app/oradata/orcl/redo05a.log','/usr/oracle/app/oradata/orcl/redo05b.log') SIZE 2048M;

ALTER DATABASE ADD LOGFILE GROUP 6('/usr/oracle/app/oradata/orcl/redo06a.log','/usr/oracle/app/oradata/orcl/redo06b.log')  SIZE 2048M;

2、切换当前日志到新的日志组

alter system switch logfile;

alter system switch logfile;

alter system switch logfile;

3、删除旧的日志组

查看日志组的状态看一下哪个是当前组,哪个是inactive状态的。

SQL> select * from v$log;

删除掉inactive的那个组。如果状态为current和active 在删除的时候会报错

alter database drop logfile group 1;

alter database drop logfile group 2;

alter database drop logfile group 3;

4、操作系统下删除原日志组1、2、3中的文件

注意:每一步删除drop操作,都需要手工删除操作系统中的实体文件。

5、重建日志组1、2、3

ALTER DATABASE ADD LOGFILE GROUP 1('/usr/oracle/app/oradata/orcl/redo01a.log','/usr/oracle/app/oradata/orcl/redo01b.log')SIZE 2048M;

 ALTER DATABASE ADD LOGFILE GROUP 2('/usr/oracle/app/oradata/orcl/redo02a.log','/usr/oracle/app/oradata/orcl/redo02b.log')SIZE 2048M;

 ALTER DATABASE ADD LOGFILE GROUP 3('/usr/oracle/app/oradata/orcl/redo03a.log','/usr/oracle/app/oradata/orcl/redo03b.log')SIZE 2048M;

6、切换日志组

alter system switch logfile; 

alter system switch logfile; 

alter system switch logfile;

7、删除中间过渡用的日志组4、5、6

alter database drop logfile group 4; 

alter database drop logfile group 5; 

alter database drop logfile group 6;

8、到操作系统下删除原日志组4、5、6中的文件

9、备份当前的最新的控制文件

SQL> alter database backupcontrolfile to trace resetlogs

Oracle更改redo log的大小的更多相关文章

  1. Oracle更改redo log大小 or 增加redo log组

    (1)redo log的大小可以影响 DBWR 和 checkpoint : (2)arger redo log files provide better performance. Undersize ...

  2. 修改redo log 的大小

    alert日志中含有大量警告信息:"Thread 1 cannot allocate new log, sequence 320xx Checkpoint not complete" ...

  3. Oracle current redo.log出现坏块后的不完全恢复案例一则

    1异常出现      8月30日下午2时左右,接同事电话,说数据库异常宕机了,现在启动不了. 2初步分析 我让现场把alert.log发过来,先看看是什么问题.   关于ORA-00353和ORA-0 ...

  4. Oracle Redo Log 机制 小结(转载)

    Oracle 的Redo 机制DB的一个重要机制,理解这个机制对DBA来说也是非常重要,之前的Blog里也林林散散的写了一些,前些日子看老白日记里也有说明,所以结合老白日记里的内容,对oracle 的 ...

  5. Oracle Dataguard Standby Redo Log的两个实验

    在Data Guard环境中,Standby Redo Log是一个比较特殊的日志类型.从最新的DG安装指导中,都推荐在Primary和Standby端,都配置Standby Redo Log. 简单 ...

  6. 调整innodb redo log files数目和大小的具体方法和步骤

    相较于Oracle的在线调整redo日志的数目和大小,mysql这点则有所欠缺,即使目前的mysql80版本,也不能对innodb redo日志的数目和大小进行在线调整,下面仅就mysql调整inno ...

  7. InnoDB事务日志(redo log 和 undo log)详解

    数据库通常借助日志来实现事务,常见的有undo log.redo log,undo/redo log都能保证事务特性,undolog实现事务原子性,redolog实现事务的持久性. 为了最大程度避免数 ...

  8. MySQL · 引擎特性 · InnoDB redo log漫游(转)

    前言 InnoDB 有两块非常重要的日志,一个是undo log,另外一个是redo log,前者用来保证事务的原子性以及InnoDB的MVCC,后者用来保证事务的持久性. 和大多数关系型数据库一样, ...

  9. Mysql InnoDB Redo log

    一丶什么是redo innodb是以也为单位来管理存储空间的,增删改查的本质都是在访问页面,在innodb真正访问页面之前,需要将其加载到内存中的buffer pool中之后才可以访问,但是在聊事务的 ...

随机推荐

  1. 委托Func和Action【转】

    平时我们如果要用到委托一般都是先声明一个委托类型,比如: private delegate string Say(); string说明适用于这个委托的方法的返回类型是string类型,委托名Say后 ...

  2. ES6精简要点

    没想到ES7都出来了(虽然并不大),想到自己ES6还没学完 现在就补补吧,记录下重点部分 Let的用法 用来声明块级变量 f1();function f1() { let n = 5; if (tru ...

  3. canvas扩散圆环

    最近看了很多牛的动画,想想自己的canvas的确很菜. 公式在那里,但是不是太会套.找demo发现都是很难的 于是找了个简单的效果 圆环从中间扩散的效果 关键是 globalCompositeOper ...

  4. 胜利大逃亡 HDU1429 (bfs)

    最后两题算是这个专题最难的两题了 这题关键是标记数组 我一开始设置的是 四维的  第三维是朝向  第四维是钥匙个数 但是 不同的取法钥匙个数可能会重复   如:取ab钥匙和取ac钥匙都是两枚  导致w ...

  5. POJ 2407 Relatives【欧拉函数】

    <题目链接> 题目大意: Given n, a positive integer, how many positive integers less than n are relativel ...

  6. kruskal证明

    Kruskal算法证明   易证,对于一个无向加权连通图,总是存在一棵或以上的有限课生成树,而这些生成树中肯定存在至少一棵最小生成树.下面证明Kruskal算法构造的生成树是这些最小生成树中的一棵. ...

  7. TypeReference -- 让Jackson Json在List/Map中识别自己的Object

    private Map<String, Object> buildHeaders(Object params) { ObjectMapper objectMapper = JacksonH ...

  8. 14,EasyNetQ-使用EasyNetQ.Hosepipe重新提交错误消息

    EasyNetQ队列管理实用程序. 用它从队列中抓取消息并重新发布. 还可以用它来检查错误队列消息并重试它们. 1,用法: EasyNetQ.Hosepipe.exe <command> ...

  9. RabbitMQ for CentOS安装教程

    一.下载并安装Erlang 下载地址:http://www.erlang.org/downloads otp_src_20.3.tar.gz ①解压otp_src_20.3.tar.gz ②安装各种驱 ...

  10. CSS-定位(Position)

    目录 CSS-定位(Position) CSS-定位(Position) ### 学习自 菜鸟教程 ### Overview CSS中HTML元素存在以下之后定位选项 Position Desc st ...