使用隐含参数testMappingSpeed排查GoldenGate抽取慢的步骤
OGG经典抽取模式读取redo慢的检查步骤,可以采用以下几个步骤来排查。
步骤一,确认是否抽取进程的写入有问题
1. 在原有抽取进程上,执行如下命令,统计抽取进程的效率
GGSCI> stats extract <extract_name>, totalsonly *, reportrate sec
GGSCI> stats extract <extract_name>, totalsonly *, reportrate min
2. 拷贝该进程的参数为另一个参数文件,如etest.prm
3. 修改etest.prm中的相关信息
4. 添加如下2行到etest参数文件中
TESTMAPPINGSPEED
REPORTCOUNT EVERY 5000 RECORDS
5. 添加etest进程
GGSCI> add extract etest, tranlog, begin now
修改进程从慢的位置开始读取,比如从读取慢的某个归档开始
GGSCI>alter extract etest, extseqno <arch_seq_no>, extrba 0
6. 启动etest进程
GGSCI>start etest
7. 等几分钟后,再做一次抽取效率统计
GGSCI> stats extract etest, totalsonly *, reportrate sec
GGSCI> stats extract etest, totalsonly *, reportrate min
如果统计结果与前面的结果有明显差异,说明抽取进程写入队列文件很慢,需要检查写入磁盘的IO。
如果抽取效率变化不大,则继续排查。
步骤二,确认是否使用了fetch造成读取DB慢
8. 修改etest进程,注释掉所有表的抽取,只保留或添加一张变化量很小的测试表;
如果性能有明显提升,则说明问题是在日志处理上。OGG解析日志有两部分工作,一个是直接解析日志,另一个是从DB中获取(fetch)需要的数据。
为了确认是否从DB获取造成性能下降,修改etest为如下:
--TESTMAPPINGSPEED
TRACE ./dirtmp/ext.trc
TRACE2 ./dirtmp/ext.trc2
使用alter etest,使其仍然从前面测试的开始点去读取,运行一段时间后,检查ext.trc, ext.trc2,查看里面是否有select语句,这些select语句是否执行时间很长,如果是,则表明从DB获取数据消耗太多时间,需要由DBA来检查DB是否需要优化。
另外,如果在DB日志中有提示undo空间超时或snapshot错误,则在抽取进程中添加FETCHOPTIONS NOUSESNAPSHOT,要求ogg extract从DB获取数据,而不是snapshot。
步骤三,系统硬件排查
9. 如果只保留一张表,性能仍然没有提升,在CPU、内存没有问题的情况,极有可能是因为DB日志对应的磁盘IO不行。可以使用dd命令来测试一下磁盘的读写性能。
使用隐含参数testMappingSpeed排查GoldenGate抽取慢的步骤的更多相关文章
- js的隐含参数(arguments,callee,caller)使用方法
在提到上述的概念之前,首先想说说javascript中函数的隐含参数: arguments arguments 该对象代表正在执行的函数和调用它的函数的参数.[function.]arguments[ ...
- 传递给函数的隐含参数:arguments及递归函数的实现
传递给函数的隐含参数:arguments当进行函数调用时,除了指定的参数外,还创建一个隐含的对象——arguments.arguments是一个类似数组但不是数组的对象,说它类似是因为它具有数组一样的 ...
- [20190417]隐含参数_SPIN_COUNT.txt
[20190417]隐含参数_SPIN_COUNT.txt--//在探究latch spin计数之前,先简单探究_SPIN_COUNT.实际上oracle现在版本latch spin的数量不再是200 ...
- [20190401]隐含参数_mutex_spin_count.txt
[20190401]隐含参数_mutex_spin_count.txt --//上午做了一些测试关于semtimedop函数调用,发现自己上个星期在一些问题上理解错误.--//相关链接:--//htt ...
- GoldenGate抽取Informix数据库安装及配置
GoldenGate抽取Informix数据库安装及配置 本次测试架构 l 在中间机上安装informix csdk4.10版本,并编译配置unixODBC; l 在中间机上安装ogg for I ...
- oracle查询所有初始化参数(含隐含参数)
年龄大了,感觉记性不是很好了,还是重新做笔记了.最近在整理些稿子,顺便在记录下oracle查询所有初始化参数(含隐含参数): SELECT i.ksppinm name, i.ksppdesc des ...
- oracle隐含参数的查看与修改
v$parameter视图中查询参数的时候其实都是通过x$ksppi和x$ksppcv这两个内部视图中得到的. 1. 可以通过如下方式查询当前实例的所有隐含参数: col name for a30 ...
- 转 rman-08120 以及查询隐含参数
rman-08120 We need RMAN to automatically purge archivelogs from the FRA once they are applied to the ...
- [20191206]隐含参数_db_always_check_system_ts.txt
[20191206]隐含参数_db_always_check_system_ts.txt --//今年年头我做tab$删除恢复时,遇到的问题,就是遇到延迟块清除的问题.参考链接:http://blog ...
随机推荐
- mongodb studio 3t 破解无限使用脚本
@echo off ECHO 重置Studio 3T的使用日期...... FOR /f "tokens=1,2,* " %%i IN ('reg query "HKEY ...
- Html-根据不同的分辨率设置不同的背景图片
@media only screen and (min-width: 1024px) //当分辨率width >= 1024px 时使用1.jpg作为背景图片 { ...
- save
docker-compose-orderer.yaml # Copyright IBM Corp. All Rights Reserved. # # SPDX-License-Identifier: ...
- zabbix 监控 redis
redis 可以直接使用zabbix官方的模板 模板地址: https://github.com/blacked/zbx_redis_template redis 主机通过脚本把数据推送到zabbi ...
- SEO--质量监测
日志分析 1.每个搜索引擎的总体抓取量 2.记录搜索引擎蜘蛛的不重复抓取量 3.每个目录.每个搜索引擎的抓取量 4.统计搜索引擎抓取的状态码(通过查看欧化300,404,500等分析那些页面需要优化) ...
- iOS UI基础-16.0 UIButton
回归自然,UIButton是我们使用最频烦的一个控件.下面,对该控件的一些常用方法进行一些总结. UIButton *payStateBtn = [UIButton buttonWithType:UI ...
- 题外话:Lua脚本语言存在的意义
纯属个人见解. 大致来说:c/c++执行效率高,游戏中一些性能敏感的复杂计算需要用c/c++来实现,防止游戏卡顿和低帧率.这些复杂计算包括战斗逻辑,复杂AI,骨骼动画蒙皮骨骼点的坐标计算等等.但c++ ...
- python快速开发Web之Django
以前写测试框架,要么是纯python代码驱动的,要么是WinForm界面的框架,多人操作并不适合. 就想用python写个Web版的,于是想到了Web快速开发的框架Flask和Django两个 个人觉 ...
- opencv之模糊处理
初学OpenCV的开发者很容易被OpenCV中各种滤波方法所困扰,不知道到底该用哪里一个来做滤波.表面原因看起来是因为OpenCV中各种滤波方式实在是太多太杂, 其背后原因是对各种滤波方法的应用场景认 ...
- python windows 安装jieba....
用cmd进入到python安装路径,进入scripts文件夹,输出pip install jieba 安装完成提示