OGG 更新表频繁导致进程中断,见鬼了?非也!
大家好,这里是 DBA学习之路,专注于提升数据库运维效率。
目录
- 前言
- 问题描述
- 问题分析
- 解决方案
- 后续
前言
最近几周一直遇到一个 OGG 问题,有一张表已更新就会中断 OGG 同步进程,本文记录一下分析过程以及解决方案。
问题描述
昨天下午,客户说 OGG 又停了(OGG 版本是 19.1.0.4,源端和目标端同版本,都是 19.20):
ogg 又停了,源端到目标端的 XZ3WFP 链路,可以查一下原因吗?
连上环境看了下,确实目标端复制链路处理 ABENDED 状态:
查看目标端 ggserr.log 日志(日志路径一般在 $OGG_HOME 目录下):
日志里没有看到明显报错信息。
问题分析
简单查看了下每次链路 ABENDED,报错的内容都是因为 update 语句导致,源端都是正常抽取状态,目标端复制进程异常终止。
关于 ggserr.log 日志中报错信息,查看官方针对这个错误代码的定义:
OGG-01296: Error mapping from {0} to {1}
The mapping of the specified source and target tables failed.Examine the accompanying messages that provide details about the mapping failure, and resolve the problem based on those messages.
查看目标端 discardfile 文件(日志路径一般在 $OGG_HOME/dirrpt 目录下):
看报错是缺列 ID,ID 是这张表的主键,检查了一下源端和目标端的表结构以及主键,发现没有区别,两端保持一致:
SQL> select owner, constraint_name, constraint_type, status, validated from dba_constraints where owner='XXXXXXX' and TABLE_NAME = 'XXXXX';
源端和目标端均存在主键,按理来说应该没有问题。问了一下客户,这张表是最近新建的表,检查一下源端的抽取链路参数:
有设置参数 ddloptions addtrandata report
参数,按理来说应该可以自动添加 trandata,检查一下源端 trandata 是否正常(一般是手动添加完 trandata 用 dba_log_groups 视图查看):
但是通过参数自动添加需要使用下方方式查看:
检查发现没有添加 trandata 记录,在 ggsci 中检查表是否添加 trandata:
确实没有添加 trandata,这就很奇怪,不过先处理问题要紧。
解决方案
之前每次遇到这个问题,为了紧急恢复同步,都是使用跳过当前事务的方式恢复:
这里也是先紧急修复了,然后手动添加 trandata:
添加完之后再次检查视图:
可以查看记录,这次是添加成功了,后续请客户再次执行 update 操作:
复制链路没有中断,数据正常同步,问题解决。
后续
后续问了客户建表的操作,客户反馈:
- 第一次建表忘记添加主键,所以添加成功后,删掉了这张表;
- 重建表,设置 ID 为主键。
之前每次对这张表进行 update 操作,都会导致复制链路中断。
等后面有时间了可以做一下测试~
相关文章:
OGG 更新表频繁导致进程中断,见鬼了?非也!
大家好,这里是 DBA学习之路,专注于提升数据库运维效率。 目录 前言问题描述问题分析解决方案后续 前言 最近几周一直遇到一个 OGG 问题,有一张表已更新就会中断 OGG 同步进程,本文记录一下分析过程以及解决方案。 问题描述 昨天…...
C++学习-入门到精通-【7】类的深入剖析
C学习-入门到精通-【7】类的深入剖析 类的深入剖析 C学习-入门到精通-【7】类的深入剖析一、Time类的实例研究二、组成和继承三、类的作用域和类成员的访问类作用域和块作用域圆点成员选择运算符(.)和箭头成员选择运算符(->)访问函数和工具函数 四、具有默认实参的构造函数重…...
非易失性存储技术综合对比:EEPROM、NVRAM、NOR Flash、NAND Flash和SD卡
非易失性存储技术综合对比:EEPROM、NVRAM、NOR Flash、NAND Flash和SD卡 读写性能对比 存储类型读取速度写入速度随机访问能力最小操作单位NVRAM极快(~10ns)极快(~10ns)极优(字节级)字节EEPROM中等(~100ns)慢(~5ms/字节)优(字节级)字节NOR Flash快(~50ns)慢(~5ms/…...
数字化转型- 数字化转型路线和推进
数字化转型三个阶段 百度百科给出的企业的数字化转型包括信息化、数字化、数智化三个阶段 信息化是将企业在生产经营过程中产生的业务信息进行记录、储存和管理,通过电子终端呈现,便于信息的传播与沟通。数字化通过打通各个系统的互联互通,…...
ARM (Attention Refinement Module)
ARM模块【来源于BiSeNet】:细化特征图的注意力,增强重要特征并抑制不重要的特征。 Attention Refinement Module (ARM) 详解 ARM (Attention Refinement Module) 是 BiSeNet 中用于增强特征表示的关键模块,它通过注意力机制来细化特征图&…...
符合Python风格的对象(对象表示形式)
对象表示形式 每门面向对象的语言至少都有一种获取对象的字符串表示形式的标准方 式。Python 提供了两种方式。 repr() 以便于开发者理解的方式返回对象的字符串表示形式。str() 以便于用户理解的方式返回对象的字符串表示形式。 正如你所知,我们要实现_…...
AtCoder AT_abc406_c [ABC406C] ~
前言 除了 A 题,唯一一道一遍过的题。 题目大意 我们定义满足以下所有条件的一个长度为 N N N 的序列 A ( A 1 , A 2 , … , A N ) A(A_1,A_2,\dots,A_N) A(A1,A2,…,AN) 为波浪序列: N ≥ 4 N\ge4 N≥4(其实满足后面就必须满足这…...
多指标组合策略
该策略(MultiConditionStrategy)是一种基于多种技术指标和市场条件的交易策略。它通过综合考虑多个条件来生成交易信号,从而决定买入或卖出的时机。 以下是对该策略的详细分析: 交易逻辑思路 1. 条件1:星期几和价格变化判断 - 该条件根据当前日期是星期几以及价格的变化…...
系统架构-大数据架构设计
基础介绍 三大挑战: 如何处理非结构化和半结构化数据如何探索大数据复杂性、不确定性特征描述的刻画方法及大数据的系统建模数据异构性与决策异构性的关系对大数据知识发现与管理决策的影响 架构特征: 鲁棒性(稳定性)和容错性…...
R语言空间数据处理入门教程
我的课程《R语言空间数据处理入门教程》已重新恢复课程售卖,有需要的读者可以学习。 👇点击下方链接(文末“阅读原文”可直达),立即开启你的空间数据之旅: https://www.bilibili.com/cheese/play/ss13775…...
QT+EtherCAT 主站协议库—SOEM主站
SOEM 是 Simple Open EtherCAT Master Library 的缩写,是瑞典 rt-lab 提供 的一个开源 EtherCAT 主站协议库 。 SOEM 库使用 C 语言编写,可以在 windows 以及 Linux 平台上运行,并也可以方便地移植到嵌入式平台上。 SOEM 支持 CoE ࿰…...
Java-反射(Reflection)
一:概述 (1)出现背景 (2)解决方案 (3)使用场景 业务开发用的少,框架使用的多,业务反射被认为是动态语言的关键 (4)与原方法对比 (5…...
第一次经历项目上线
这几天没写csdn,因为忙着项目上线的问题,我这阶段改了非常多的前端bug哈哈哈哈,说几个比较好的bug思想! 这个页面算是我遇到的比较大的bug,因为我一开始的逻辑都写好了,询价就是在点击快递公司弹出弹框的时…...
基于C#的MQTT通信实战:从EMQX搭建到发布订阅全解析
MQTT(Message Queueing Telemetry Transport) 消息队列遥测传输,在物联网领域应用的很广泛,它是基于Publish/Subscribe模式,具有简单易用,支持QoS,传输效率高的特点。 它被设计用于低带宽,不稳定或高延迟的…...
DeepSeek超大模型的高效训练策略
算力挑战 训练DeepSeek此类千亿乃至万亿级别参数模型,对算力资源提出了极高要求。以DeepSeek-V3为例,其基础模型参数量为67亿,采用专家混合(MoE)架构后实际激活参数可达几百亿。如此规模的模型远超单张GPU显存容量极限,必须借助分布式并行才能加载和训练。具体挑战主要包…...
【论文阅读】人脸修复(face restoration ) 不同先验代表算法整理
转眼做人脸复原(face restoration)算法也一段时间了,根据自己的记忆整理一下自己的一些看法,算作个人记录,当然如果有人愿意分享自己的看法也是极好的。先挂下文章链接,下一篇在写总结。 一、前述 人脸修复(face restoration)任…...
最小二乘法拟合平面(线性回归法、梯度下降、PCA法)
参考笔记: Open3D 最小二乘拟合平面(直接求解法)【2025最新版】_python open3d已知平面方程绘制平面-CSDN博客 目录 1.前言 2.线性回归法 2.1 模型假设 2.2 定义误差函数 2.3 求偏导并解方程 2.4 解方程 2.5 案例演示 2.5.1 手工计…...
数组名既可作为指针也可作为变量名
在C语言中,数组名在不同的上下文中既可以作为指向数组首个元素的指针,也可以代表整个数组,这是由C语言的设计和语法规则决定的,下面我来详细解释一下。 1. 数组名作为指向首元素的指针 在大多数情况下,当数组名出现在…...
MySQL相关
1.多表查询关键点在哪 📖 1️⃣ 明确关联关系 先搞清楚多表之间的关联关系: 一对一(1:1) 一对多(1:N) 多对多(M:N) 比如: 一个课程对应一个教室(1:1&am…...
Axure制作可视化大屏动态滚动列表教程
在可视化大屏设计中,动态滚动列表是一种常见且实用的展示方式,能够有效地展示大量信息。本文将详细介绍如何使用Axure制作一个动态滚动的列表展示模块。 一、准备工作 打开Axure软件:确保你已经安装并打开了Axure RP软件。创建新项目&#x…...
计算机网络(1)——概述
1.计算机网络基本概念 1.1 什么是计算机网络 计算机网络的产生背景 在计算机网络出现之前,计算机之间都是相互独立的,每台计算机只能访问自身存储的数据,无法与其他计算机进行数据交换和资源共享。这种独立的计算机系统存在诸多局限性&#…...
融智学视域下的系统性认知增强框架——基于文理工三类AI助理赋能HI四阶跃迁路径
融智学视域下的系统性认知增强框架 ——基于文理工三类AI助理赋能HI四阶跃迁路径 一、如何排除50个认知偏差:消除50类偏差的精准矫正系统 1. 技术架构 文科AI: 构建文化语义场(Cultural Semantic Field, CSF),通过…...
C++ - 仿 RabbitMQ 实现消息队列(2)(Protobuf 和 Muduo 初识)
C - 仿 RabbitMQ 实现消息队列(2)(Protobuf 和 Muduo 初识) Protobuf1. 序列化/反序列化方法(最核心)_InternalSerialize()_InternalParse() 2. 内存管理方法SharedCtor()/SharedDtor()InternalSwap() 3. 字…...
FTP与NFS服务实战:从配置到应用
一、FTP服务进阶:客户端工具与访问控制 1. FTP客户端工具对比 在Linux中,ftp和lftp是常用的FTP客户端工具,功能各有侧重: 工具特点适用场景ftp基础命令交互,需手动输入用户名/密码简单文件传输lftp支持多协议、批量…...
高考AI试题查询系统
高考AI试题查询系统 gitee:https://gitee.com/ltyyyds26/GaoKao_AI 数据 来源:OpenLMLab/GAOKAO-Bench: GAOKAO-Bench is an evaluation framework that utilizes GAOKAO questions as a dataset to evaluate large language models. (github.com) 数…...
记录算法笔记(2025.5.17)验证二叉搜索树
给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 示例 1: 输入&…...
DataX:一个开源的离线数据同步工具
DataX 是一个异构数据源离线同步(ETL)工具,实现了包括关系型数据库(MySQL、Oracle 等)、HDFS、Hive、ODPS、HBase、FTP 等各种异构数据源之间稳定高效的数据同步功能。它也是阿里云 DataWorks 数据集成功能的开源版本。 为了解决异构数据源同…...
剑指offer第一周
目录 二维数组中的查找 旋转数组的最小数字 调整数组顺序使奇数位于偶数前面 数组中出现次数超过一半的数字 替换空格 从尾到头打印链表 重建二叉树 矩形覆盖 链表中倒数最后k个结点 二进制中1的个数 合并两个排序的链表 树的子结构 二叉树的镜像 二…...
素数筛(欧拉筛算法)
#include<bits/stdc.h> using namespace std; #define maxn 100000 int vis[maxn]; int prime[maxn]; //欧拉筛函数 int Euler_sieve(int n) { int i,j,k; k0;//保存素数的个数 memset(vis,0,sizeof(int)*maxn);//初始化数组 for(i2;i<n;i) { if(vis[i]0)//i是素数…...
遨游科普:三防平板是什么?有什么功能?
清晨的露珠还挂在帐篷边缘,背包里的三防平板却已开机导航;工地的尘土飞扬中,工程师正通过它查看施工图纸;暴雨倾盆的救援现场,应急队员用它实时回传灾情数据……这些看似科幻的场景,正因三防平板的普及成为…...
CSS 浮动与定位以及定位中z-index的堆叠问题
CSS 浮动与定位以及定位中z-index的堆叠问题 一、浮动布局的特点与应用 1. 浮动核心特性 脱离标准流:浮动元素会脱离文档流。环绕特性:后续内容会环绕浮动元素排列自动换行:多个浮动元素在容器宽度不足时自动换行 .float-box {float: lef…...
在Maven中替换文件内容的插件和方法
在Maven中替换文件内容的插件和方法 Maven提供了几种方式来替换文件内容,以下是常用的插件和方法: 1. maven-replacer-plugin (推荐) 这是专门用于文件内容替换的插件,功能强大且灵活。 基本配置 <plugin><groupId>com.goog…...
C# lock
在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时,其他线程无法访问同一实例的该代码块。这是一种简单的同步机制,用来防止多个线程同时访问共享资源或执行需要独占访问的代码段(临界区),从而…...
OGGMA 21c 微服务 (MySQL) 安装避坑指南
前言 这两天在写 100 天实战课程 的 OGG 微服务课程: 在 Oracle Linux 8.10 上安装 OGGMA 21c MySQL 遇到了一点问题,分享给大家一起避坑! 环境信息 环境信息: 主机版本主机名实例名MySQL 版本IP 地址数据库字符集Goldengate …...
NPN、PNP三极管的应用
由于电路知识实在是难以拿出手,在面试的时候被问到三极管相关问题,相当地尴尬。在网上简要地学习了相关的理论知识,在这里给出自己的理解。更为基础的原理在这里并不提及。我们面向实际应用学习即可。 我们知道常见的三极管总是硅管ÿ…...
Cadence Allegro安装教程及指导
Cadence Allegro 是一款专业的 PCB 设计软件,被广泛应用于电子行业。它功能强大,能够处理复杂的电路板设计任务。下面为你详细介绍 Cadence Allegro 的安装步骤。 一、安装前准备 在安装 Cadence Allegro 之前,需要进行一系列准备工作&…...
阿里通义万相 Wan2.1-VACE:开启视频创作新境界
2025 年 5 月 14 日,阿里巴巴为视频创作领域带来了重磅惊喜 —— 开源通义万相 Wan2.1-VACE。这一模型堪称视频生成与编辑领域的集大成者,凭借其全面且强大的功能,为广大创作者、开发者以及企业用户开辟了全新的视频创作天地。它打破了以往视…...
mAP、AP50、AR50:目标检测中的核心评价指标解析
在目标检测任务中,评价指标是衡量模型性能的核心工具。其中,mAP(mean Average Precision)、AP50(Average Precision at IoU0.5)和AR50(Average Recall at IoU0.5)是最常用的指标。本…...
Linux进程异常退出排查指南
在 Linux 中,如果进程无法正常终止(如 kill 命令无效)或异常退出,可以按照以下步骤排查和解决: 1. 常规终止进程 尝试普通终止(SIGTERM) kill PID # 发送 SIGTERM 信号(…...
深入解析:如何基于开源OpENer开发EtherNet/IP从站服务
一、EtherNet/IP协议概述 EtherNet/IP(Industrial Protocol)是一种基于以太网的工业自动化通信协议,它将CIP(Common Industrial Protocol)封装在标准以太网帧中,通过TCP/IP和UDP/IP实现工业设备间的通信。作为ODVA(Open DeviceNet Vendors Association)组织的核心协议…...
【Linux 学习计划】-- yum
目录 什么是yum Linux的生态讲解 yum相关操作 yum源 yum配置相关问题 结语 什么是yum 我们的手机上都有手机自带的软件商城,我们下载软件都可以在上面搜索,安装,下载 而我们的yum就是这么一个东西,他其实就是Linux下的安装…...
Qt 强大的窗口停靠浮动
1、左边: 示例代码: CDockManager::setConfigFlags(CDockManager::DefaultOpaqueConfig); CDockManager::setConfigFlag(CDockManager::FocusHighlighting, true); dockManager new CDockManager(this); // Disabling the Internal Style S…...
Flink 数据传输机制
在 Apache Flink 中,数据传输(Data Transmission)机制 是其分布式流处理能力的核心之一。Flink 通过高效的内部数据交换、网络通信和序列化机制,确保任务之间的数据能够高效、可靠地流动。 一、Flink 数据传输的基本流程 Source …...
数据库——SQL约束窗口函数介绍
4.SQL约束介绍 (1)主键约束 A、基本内容 基本内容 p r i m a r y primary primary k e y key key约束唯一表示数据库中的每条记录主键必须包含唯一的值(UNIQUE)主键不能包含NULL值(NOT NULL)每个表都应…...
第8讲、Multi-Head Attention 的核心机制与实现细节
🤔 为什么要有 Multi-Head Attention? 单个 Attention 机制虽然可以捕捉句子中不同词之间的关系,但它只能关注一种角度或模式。 Multi-Head 的作用是: 多个头 多个视角同时观察序列的不同关系。 例如: 一个头可能专…...
【发票提取表格】批量PDF电子发票提取明细保存到Excel表格,批量提取ODF电子发票明细,行程单明细,单据明细保存到表格,使用步骤、详细操作方法和注意事项
在日常办公中,我们常常会面临从大量 PDF 电子发票、ODF 电子发票、行程单及各类单据中提取明细,并整理到 Excel 表格的艰巨任务。手动操作不仅耗时费力,还极易出错。以下为您详细介绍其使用步骤、操作方法、注意事项及应用场景。 一、适用场…...
React中startTransition的使用
// 引入 React 的 Hook API:useState 管理状态、useTransition 处理非紧急更新、useMemo 缓存计算结果 import { useState, useTransition, useMemo } from react;/*** List 组件:* 根据输入的 query 动态渲染一个包含 10000 条数据的列表*/ function Li…...
Reactor (epoll实现基础)
Reactor 是什么? Reactor 网络模型是一种高性能的事件驱动模型,广泛应用于网络编程中。它通过 I/O 多路复用技术,实现了高效的事件处理和系统吞吐量的优化。 核心概念 Reactor 模型_的核心是事件驱动,即当 I/O 事件准备就绪时_…...
php fiber 应用
参考 基于 PHP Fiber(纤程)的游戏开发分析-腾讯云开发者社区-腾讯云PHP 8.1 引入的 Fibers 为游戏开发带来新机遇,能管理渲染、物理计算等任务且不阻塞主线程。它支持并发,提升效率,简单易用,但也有局限&a…...
前端扫盲HTML
文章目录 下载、安装、运行第一个代码(hello world)创建代码文件编辑代码(hello world)HTML常见标签注释标签标题标签段落标签换行标签格式化标签图片标签表格标签列表标签表单标签下拉菜单无语义标签 参考文档 下载、安装、运行第…...