修改redo log 的大小
alert日志中含有大量警告信息:“Thread 1 cannot allocate new log, sequence 320xx Checkpoint not complete”
触发checkpoint条件其中有一条是redo切换时,观察告警日志发现大量的日志切换动作,说明该checkpoint就是由redo日志切换造成的,而checkpoint会触发DBWn将data buffer cache中的dirty block刷到datafile中,而checkpoint not complete说明data buffer cache中的dirty block还没有写到datafile中redo就又要切换,就会出现“Thread 1 cannot allocate new log”。
解决方法:
修改redo日志的大小并添加日志组后问题解决。
set lines 200 pages 300
col member for a60
select a.thread#,a.group#,b.member,b.type,a.status,a.bytes/1024/1024 MB from v$log a,v$logfile b where a.group#=b.group#
union all
select a.thread#,a.group#,b.member,b.type, a.status,a.bytes/1024/1024 MB from v$standby_log a,v$logfile b where a.group#=b.group#;
THREAD# GROUP# MEMBER TYPE STATUS MB
---------- ---------- ----------------------------------------------------------
可以看到,每个redo只有50MB,且每个线程只有两组。
因为redo不能直接修改大小,因而采用先增加大一点的新redo然后删除旧redo的方式。
增加新的redo,因为RAC环境下有多个日志线程,所以在添加日志时必须指定线程号:
每个节点实例用到的联机日志就是一个Redo Thread,单实例有且只有一个Redo Thread。
在RAC环境下,每个节点实例都需要自己的联机日志,也就是每个节点实例都有自己的Redo Thread。
这种每个节点实例一个Redo Thread,该设计是为了避免实例间共享Redo文件引发的竞争,提高系统性能。
RAC数据库通过thread这个参数用来指定节点实例使用的Redo Thread线程号,一般和该实例的INSTANCE_NUMBER参数相同。
通过视图V$LOG的THREAD#列可以确认日志组所属的线程。
alter database add logfile thread 1
group 5 '+DG_ORA/ipcc/redo05.log' size 200M,
group 6 '+DG_ORA/ipcc/redo06.log' size 200M;
alter database add logfile thread 2
group 7 '+DG_ORA/ipcc/redo07.log' size 200M,
group 8 '+DG_ORA/ipcc/redo08.log' size 200M;
当原日志组的状态为 INACTIVE 时方可删除
删除日志组的命令如下:
alter database drop logfile group N;
#其中N对应GROUP#
如果redo的状态不是INACTIVE,可以执行如下两条sql切换redo
alter system switch logfile;
alter system checkpoint;
然后删除旧的redo
alter database drop logfile group 1;
alter database drop logfile group 2;
alter database drop logfile group 3;
alter database drop logfile group 4;
数据库中删除之后,物理文件并没有被删除,手动删除对应的redo物理文件
db1:~# su - grid
grid@db1:~> asmcmd
ASMCMD> ls
redo01.log
redo02.log
redo03.log
redo04.log
redo05.log
redo06.log
redo07.log
redo08.log
spfileipcc.ora
ASMCMD> rm redo01.log
ASMCMD> rm redo02.log
ASMCMD> rm redo03.log
ASMCMD> rm redo04.log
删除完成后,再增加新的redo
alter database add logfile thread 1
group 1 '+DG_ORA/ipcc/redo01.log' size 200M,
group 2 '+DG_ORA/ipcc/redo02.log' size 200M;
alter database add logfile thread 2
group 3 '+DG_ORA/ipcc/redo03.log' size 200M,
group 4 '+DG_ORA/ipcc/redo04.log' size 200M;
验证结果
set lines 200 pages 300
col member for a60
select a.thread#,a.group#,b.member,b.type,a.status,a.bytes/1024/1024 MB from v$log a,v$logfile b where a.group#=b.group#
union all
select a.thread#,a.group#,b.member,b.type, a.status,a.bytes/1024/1024 MB from v$standby_log a,v$logfile b where a.group#=b.group#;
修改redo log 的大小的更多相关文章
- Oracle更改redo log的大小
因为数据仓库ETL过程中,某个mapping的执行时间超过了一个小时, select event,count(*) fromv$session_wait group by event order by ...
- Oracle更改redo log大小 or 增加redo log组
(1)redo log的大小可以影响 DBWR 和 checkpoint : (2)arger redo log files provide better performance. Undersize ...
- 调整innodb redo log files数目和大小的具体方法和步骤
相较于Oracle的在线调整redo日志的数目和大小,mysql这点则有所欠缺,即使目前的mysql80版本,也不能对innodb redo日志的数目和大小进行在线调整,下面仅就mysql调整inno ...
- mysql事务(一)——redo log与undo log
数据事务 即支持ACID四大特性. A:atomicity 原子性——事务中所有操作要么全部执行成功,要么全部执行失败,回滚到初始状态 C:consistency 一致性—— ...
- InnoDB事务日志(redo log 和 undo log)详解
数据库通常借助日志来实现事务,常见的有undo log.redo log,undo/redo log都能保证事务特性,undolog实现事务原子性,redolog实现事务的持久性. 为了最大程度避免数 ...
- MySQL · 引擎特性 · InnoDB redo log漫游(转)
前言 InnoDB 有两块非常重要的日志,一个是undo log,另外一个是redo log,前者用来保证事务的原子性以及InnoDB的MVCC,后者用来保证事务的持久性. 和大多数关系型数据库一样, ...
- redo log和bin log
讲redolog和binlog之前,先要讲一下一条mysql语句的执行过程. 1.client的写请求到达连接器,连接器负责管理连接.验证权限: 2.然后是分析器,负责复习语法,如果这条语句有执行过, ...
- MySQL日志系统bin log、redo log和undo log
MySQL日志系统bin log.redo log和undo log 今人不见古时月,今月曾经照古人. 简介:日志是MySQL数据库的重要组成部分,记录着数据库运行期间各种状态信息,主要包括错误日 ...
- 一生挚友redo log、binlog《死磕MySQL系列 二》
系列文章 原来一条select语句在MySQL是这样执行的<死磕MySQL系列 一> 一生挚友redo log.binlog<死磕MySQL系列 二> 前言 咔咔闲谈 上期根据 ...
随机推荐
- 深入理解Callable接口
Callable接口: Callable,新启线程的一种方式,返回结果并且可能抛出异常的任务,在前面的新启线程的文章中用过,但是没有具体讲解 优点: 可以获取线程的执行结果,也称为返回值 通过与Fut ...
- Asp.Net Core 企业微信静默授权
企业微信接口文档 1.构造授权网页链接 2.回调获取到 Code 通过code+access_token去请求用户信息 3.获取access_token 调试准备工作 -->内网穿透+域名 推荐 ...
- Java知识系统回顾整理01基础02面向对象03方法
一.根据实例给出"方法"的定义 在LOL中,一个英雄可以做很多事情,比如超神,超鬼,坑队友 能做什么在类里面就叫做方法 比如队友残血正在逃跑,你过去把路给别人挡住了,导致他被杀掉. ...
- Vuejs上传
下载 Vuejs上传Vuejs上传 多部分上传Vue组件. 上传器可以选择上传多部分的文件. 这是关于最大的上传尺寸,允许你上传大文件. 如果prop multiple为真,文件列表将在选择文件时呈现 ...
- BeetleX之webapi使用入门
BeetleX是TCP通讯应用组件,在它之上可以扩展任何基于TCP的应用通讯功能.FastHttpApi是组件扩展的一个Http/Https/Websocket服务组件,它提供的功能丰富,包括功能有: ...
- java之网络编程1-Tcp
一,了解之前先了解一下网络基础 首先理清一个概念:网络编程 != 网站编程,网络编程现在一般称为TCP/IP编程 一般的网络编程都称为Socket编程,Socket的英文意思是"插座&quo ...
- 访问 LNMP 报 502 Bad Gateway 错误的解决办法
LNMP : Linux + Nginx + MySQL + PHP Nginx 出现502有很多原因,但大部分原因可以归结为资源数量不够用,也就是说后端 PHP-FPM 处理有问题,Nginx 将正 ...
- 返回头添加cookie信息
返回类型 HttpResponseMessage //构建返回对象 var res= Request.CreateResponse(HttpStstusCode.Ok,返回体) //创建cookie对 ...
- shell-整数测试多范例多生产案例举例
1. 整数测试举例范例1:整数条件测试举例 root@test-1 ~]# a1=10;a2=13 [root@test-1 ~]# echo $a1 $a2 10 13 [root@test-1 ~ ...
- composer 阿里云加速 转
阿里云 Composer 全量镜像 本镜像与 Packagist 官方实时同步,推荐使用最新的 Composer 版本. 最新版本: 1.10.8 下载地址: https://mirrors.aliy ...