OGG目标端复制Sequence时Hang住的问题
昨天遇到一个问题一个OGG的复制进程在复制序列(Sequence)时Hang住不动,进程状态一直是Running状态但是不往前进行复制,导致进程延迟6个多小时
GGSCI (ctm-3) 2> info allProgram Status Group Lag at Chkpt Time Since ChkptMANAGER RUNNING REPLICAT RUNNING USIM 00:13:39 06:50:22
操作复制进程时,stats和stop显示操作超时,只能kill进程,重启复制进程问题依就。问题从下午一直持续到晚上7点多,实在没有办法把所有数据都全部初始化了,还是不行,好在数据量不大。最后把goldengate用户赋予dba权限问题就解决了,但是GOLDENGATE用户的权限分配问题依然还是一个问题。下面记录了问题的处理过程,有兴趣的朋友可以看看。
使用view report usim查看日志,日志停在一个复制Sequence的语句上
Wildcard MAP resolved (entry USIM.*):map "USIM"."SEQ_PROCESSSTEP", target USIM."SEQ_PROCESSSTEP"; Resolving target sequence USIM.SEQ_PROCESSSTEP.
查看ggserr.log也没有报错信息。
于是查看数据库里的会话
SYS@ctm> select sid,serial#,LOGON_TIME,MODULE,sql_id,prev_sql_id,event,blocking_session from v$session where MODULE like '%USIM%';SID SERIAL# LOGON_TIME MODULE SQL_ID PREV_SQL_ID EVENT BLOCKING_SESSION
---------- ---------- ------------ ------------------------------ ------------- ------------- ------------------------------ ----------------764 8229 20-JAN-17 OGG-USIM-OPEN_DATA_SOURCE awjuqsu6bk5d4 b6zg67dtg1q14 row cache lockSYS@ctm> select sql_text from v$sql where sql_id='awjuqsu6bk5d4';SQL_TEXT
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SELECT "SEQ_PROCESSSTEP".NEXTVAL FROM DUALSYS@ctm> select sql_text from v$sql where sql_id='b6zg67dtg1q14';SQL_TEXT
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SELECT HIGHWATER FROM SYS.SEQ$ WHERE OBJ#=:B1
看到当前ogg的复制进程在执行SELECT "SEQ_PROCESSSTEP".NEXTVAL FROM DUAL的语句,进程是在等待row cache lock。上面贴出来的是晚上查询时的情况,其实下午在查这条sql时是不同的一个序列名字,但是动作一样都是select nextval from dual,但是等待事件有library cache: mutex X、cursor: pin S wait on X、latch free、latch: shared pool。
看到这些等待事件头都大了,先到百度上去搜索,看到有帖子说有可能是BUG,然后又到MOS上去搜等待事件的组合,看到很多BUG的文章,但是描述跟现在遇到的情况不一致。于是又转到搜goldengate和序列hang的关键字,搜到一篇http://m.blog.csdn.net/article/details?id=48544207,在MOS上搜到1331998.1和1535322.1,但都是跟现在的情况不符。
于是又无奈的去查官方文档,在Oracle GoldenGate Oracle Installation and Setup Guide中查到下面的几句话:
看到红框中的那句后恍然想到,由于系统交维,要求不允许用户有DBA角色,GOLDENGATE也不可以,于是查看GOLDENGATE用户的角色
SYS@ctm> select granted_role from dba_role_privs where grantee='GOLDENGATE';GRANTED_ROLE
------------------------------
RESOURCE
CONNECT
SELECT_CATALOG_ROLE
果然没有DBA角色,那问题是不是出在这里呢,于是尝试给GOLDENGATE用户DBA角色
grant dba to goldengate;
kill掉hang住的会话,重启复制进程usim,终于问题解决了。复制进程开始往下复制了,而且序列复制的很快
GGSCI (ctrm-r3) 20> stats usim hourlySending STATS request to REPLICAT USIM ...Start of Statistics at 2017-01-20 21:47:22.DDL replication statistics:*** Total statistics since replicat started ***Operations 0.00Mapped operations 0.00Unmapped operations 0.00Other operations 0.00Excluded operations 0.00Errors 0.00Retried errors 0.00Discarded errors 0.00Ignored errors 0.00Replicating from USIM.SEQ_PROCESSSTEP to USIM.SEQ_PROCESSSTEP:*** Hourly statistics since 2017-01-20 21:46:06 ***Total updates 16.00Total discards 0.00Total operations 16.00End of Statistics.
最后再回想,难道就真的是因为DBA角色的关系么?于是把GOLDENGATE用户的DBA角色收回:revoke dba from goldengate;
再次观察复制进程情况,竟然正常在复制,没有受到影响。而且从昨晚10点多回收dba角色,到今天发博客,复制进程也没有hang住,还在正常复制。这就回到了上面疑问,真的是因为DBA角色导致的么?现在还不清楚。如果哪位大神知道问题的原因可以在博客中回复,感激不尽。
转载于:https://blog.51cto.com/hbxztc/1893514
OGG目标端复制Sequence时Hang住的问题相关推荐
- oracle关闭rs,Oracle 关闭(shutdown immediate)时hang住
昨天晚上生产的两套10.2.0.4的数据库修改了参数,需要重启.在发出shutdown immediate命令后等了大概10分钟的时间,数据库还没有down下来.检查后台alert日志,发现从开始sh ...
- hadoop-执行mapreduce时hang住的问题
在执行mapreduce时,map成功后,reduce一直hang在17%.现象如下: [tianyc@TkHbase hadoop]$ hadoop jar contrib/streaming/ha ...
- 目标端的trail文件损坏或误删除,如何重新进行抽取
本实验主要用于:目标端OGG的trail文件损坏或人为误删除,在不丢失任何数据的情况下, 如何进行操作 1 重新启动目标端并关闭,查看检查点的信息:---此处是模拟trail文件被删除,复制进程读取的 ...
- ogg源端mysql添加trandata_oracle ogg golden gate 安装与配置
环境 oracle12c 12.1.0.2.0 ogg 19.1 linux Ubuntu 14.04.3 LTS 172.18.0.2 源数据库地址 172.18.0.3 目标数据库地址html o ...
- 炫“库”行动-人大金仓有奖征文-KFS目标端支持Kafka配置详解
[本文正在参与炫"库"行动-人大金仓有奖征文] 活动链接: https://marketing.csdn.net/p/98bd30353e7cb998b6070a89e8b91e ...
- ORACLE 源端ogg同步到mysql目标端
source源端 oracle 11.2.0.4 ogg12c ip:10.200.3.193 系统centos 7.1 1. 创建source表和一些初始化数据 su - oracle sqlplu ...
- mysql ogg kafka,OGG到kafka替换目标端OGG
1.--源端 --停源端所有进程 stop * stop mgr 2.--目标端进程 info REP_K4 showch---看RBA是否变化,查询checkpoint 表 send REP_K4 ...
- 实施逻辑复制软件时对目的端数据库的字符集(排序规则)的要求
实施逻辑复制软件时对在目的端数据库的字符集(排序规则)的要求 1.当目的端数据库是Oracle数据库时,务必保证目的端Oracle数据库的字符集与源头Oracle数据库的字符集保持一致. 2.当目的端 ...
- c++排查线程hang住_Kafka学习笔记之kafka高版本Client连接0.9Server引发的血案排查 - 时光飞逝,逝者如斯...
0x00 概述 kafka server虽然原则上是兼容详细的client,但只是高版本的Server端兼容低版本的Client端: 在有高版本Client端连接时,会导致低版本Server集群会ha ...
最新文章
- 【Linux学习笔记】 -- 基本Shell命令
- 什么叫做“假学习”?
- Hadoop学习之MapReduce(五)
- 剑指offer(60-67题)详解
- PhpStorm中绘画UML
- 表的插入、更新、删除、合并操作_9_插入默认值
- oracle并行查询结果不唯一,Oracle数据库并行查询出错的解决方法
- Nacos初探(3)-- 服务发现原理解析
- 云计算的核心技术全解读
- mac安装xbox驱动
- 为何你就是那个求职困难户?
- cad插入块_CAD制图软件中如何快速绘制推拉窗平面简图
- 在线做题---呼叫转移系统
- Python实现Pollard rho 算法用来求解离散对数问题
- Can‘t connect to MySQL server on ‘localhost‘ (10061)
- 2018-2019中国开发者调查报告简报(一文了解全貌)
- 环境艺术设计是计算机,【艺术设计论文】环境艺术设计计算机辅助设计研究(共5097字)...
- 论文阅读 Skeleton-based abnormal gait recognition with spatio-temporal attention enhanced
- Python 入门神图
- 滴滴快车奖励政策,高峰奖励,翻倍奖励,按成交率,指派单数分级(9月14日~9月20日)...
热门文章
- UICollectionViewController的用法1
- MVVM中轻松实现Command绑定任意事件的Command
- HDU_2065 红色病毒问题(指数型生成函数)
- spring3.0设置定时任务
- 【错误记录】Android Studio 编译报错 ( VirtualApp 编译 NDK 报错 | Error:A problem occurred configuring project ‘: )
- 【Flutter】Future 异步编程 ( 简介 | then 方法 | 异常捕获 | async、await 关键字 | whenComplete 方法 | timeout 方法 )
- 【Android 组件化】路由组件 ( 路由框架概述 )
- 【错误记录】Android NDK 错误排查记录 ( Could not get version from cmake.dir path ‘xxx\cmake\3.6.4111459‘. )
- 【计算机网络】网络层 : 总结 ( 功能 | 数据交换 | IP 数据报 | IPv4 地址 | IPv6 地址 | 路由选择协议 | 路由算法 )★★★
- 【Android FFMPEG 开发】FFMPEG 解码 AVPacket 数据到 AVFrame ( AVPacket-解码器 | 初始化 AVFrame | 解码为 AVFrame 数据 )