KingbaseFlySync delete语句WHERE条件缺失的解析出错问题处理思路
KingbaseFlySync delete语句WHERE条件缺失的解析出错问题处理思路
关键字:
KingbaseFlySync、Linux、x86_64、mips64el、aarch64、Java
kes到Oracle同城灾备场景
源:kesv8r6c5b0023一主一备
目标端:Oracle rac 11g (4个实例)
注意本操作比较危险,需要核实源生产库归档是否存在,如果可以的话,考虑采用别的方式,比如跳过报错事务,通过数据比对方式修复等等
1、目标端KFS后台日志报错ORA-00936:缺失表达式

从上图报错可知:delete from "USERTMP"."AFFIX_INFO" WHERE 解析存在问题。
根据报错的日志号,查找该日志号解析,发现where条件部分确实缺失。

2、 检查源端kfs配置文件

从以上KFS源端配置中,源端过滤器存在custompkey存在无主键过滤器和无主键配置文件custompkey.json。
3、 检查表是否有配置无主键解析
\d AFFIX_INFO检查是否有配置identity full。
如果没有的话,无法解析delete和update业务。
登录源生产库执行以下命令:
alter table AFFIX_INFO REPLICA IDENTITY FULL;
4、 检查无主键配置文件custompkey.json

在custompkey.json存在"affix_info":"",配置,这意味着把affix_info所有列过滤了,解决办法一:在custompkey.json删除"affix_info":"";解决办法二:把那个表affix_info的配置改对,比如"affix_info":"id",表示将id列作为表的主键。
此步我们采用解决办法一。
5、 在源端生产库确认最旧归档日志时间

从归档日志的日期看,最旧的归档是在13号,目前delete解析的业务是15号,如下图红框。

6、 在KFS源端清除解析错误日志号
fsrepctl -service kesoracle offline
kufl -service kesoracle purge -low 29623
选择y
7、 在KFS目标端清除解析错误日志号
kufl -service kesoracle purge -low 29623
选择y
8、 验证KFS源端kufl解析正常
replicator restart
fsrepctl service 看看解析日志号是否有往前走,确定解析正常后,执行如下命令验证kufl解析正常:
kufl -service kesoracle list -seqno 29623
KingbaseFlySync delete语句WHERE条件缺失的解析出错问题处理思路的更多相关文章
- mybatis的select、insert、update、delete语句
一.select <!-- 查询学生,根据id --> <select id="getStudent" parameterType="String&qu ...
- Sql Server系列:Delete语句
数据的删除将删除表的部分或全部记录,删除时可以指定删除条件从而删除一条或多条记录.如果不指定删除条件,DELETE语句将删除表中全部的记录,清空数据表. 1 DELETE语法 [ WITH <c ...
- MySQL DELETE语句和TRUNCATE TABLE语句的区别
MySQL DELETE语句和TRUNCATE TABLE语句的区别 2010-10-08 16:05 佚名 互联网 字号:T | T 在MySQL数据库中,DELETE语句和TRUNCATE TAB ...
- delete表1条件是另一个表中的数据,多表连接删除(转)
DELETE删除多表数据,怎样才能同时删除多个关联表的数据呢?这里做了深入的解释: 1. delete from t1 where 条件 2.delete t1 from t1 where 条件 3. ...
- mysql 事务是专门用来管理insert,update,delete语句的,和select语句一点不相干
1.mysql 事务是专门用来管理insert,update,delete语句的,和select语句一点不相干 2.一般来说,事务是必须满足4个条件(ACID): Atomicity(原子性).Con ...
- oracle数据库删除数据Delete语句和Truncate语句的对比
oracle数据库删除数据Delete语句和Truncate语句的对比 当表中的数据不需要时,则应该删除该数据并释放所占用的空间,删除表中的数据可以使用Delete语句或者Truncate语句,下面分 ...
- SQL语句-delete语句
delete语句 delete语句用于删除表中已经存在的整行数据 Tbl_name关键词代表删除数据的目标表 Where子句代表被删除数据的满足条件,如果没有where子句则代 表所有表数据都删除 O ...
- MySQL DELETE 语句
MySQL DELETE 语句 你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录. 你可以在mysql>命令提示符或PHP脚本中执行该命令. 语法 以下是S ...
- SQL Server中UPDATE和DELETE语句结合INNER/LEFT/RIGHT/FULL JOIN的用法
在SQL Server中,UPDATE和DELETE语句是可以结合INNER/LEFT/RIGHT/FULL JOIN来使用的. 我们首先在数据库中新建两张表: [T_A] CREATE TABLE ...
随机推荐
- 我大抵是卷上瘾了,横竖睡不着!竟让一个Bug,搞我两次!
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言:一个Bug 没想到一个Bug,竟然搞我两次! 我大抵是卷上瘾了,横竖都睡不着,坐起来 ...
- 分享|智慧环保-生态文明信息化解决方案(附PDF)
内容摘要: 生态文明建设被提到前所未有的战略高度,我们既要绿水青山,也要金山银山.宁要绿水青山,不要金山银山,而且绿水青山就是金山银山.要正确处理好经济发展同生态环境保护的关系,牢固树立保护生态环境就 ...
- .NET程序配置文件操作(ini,cfg,config)
在程序开发过程中,我们一般会用到配置文件来设定一些参数.常见的配置文件格式为 ini, xml, config等. INI .ini文件,通常为初始化文件,是用来存储程序配置信息的文本文件. [Log ...
- 最小生成树 链式前向星 Prim&Kruskal
Prim: Prim的思想是将任意节点作为根,再找出与之相邻的所有边(用一遍循环即可),再将新节点更新并以此节点作为根继续搜,维护一个数组:dis,作用为已用点到未用点的最短距离. 证明:Prim算法 ...
- 全国30m精度二级分类土地利用数据
数据下载链接:数据下载链接 引言 全国土地利用数据产品是以Landsat TM/ETM/OLI遥感影像为主要数据源,经过影像融合.几何校正.图像增强与拼接等处理后,通过人机交互目视解译的方法,将全国 ...
- ooday05 JAVA_static final_抽象方法_抽象类
final:最终的,不可改变的-----------单独应用几率低 修饰变量:变量不能被改变 //演示final修饰变量 class Aoo{ final int num = 5; void show ...
- 部署yum仓库
YUM介绍 YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器. 基于RPM包管理,能够从指定的 ...
- 「Python实用秘技09」更好用的函数运算缓存
本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第9期 ...
- OpenWrt之feeds.conf.default详解
目录 OpenWrt之feeds.conf.default详解 文件内容 命令解释 src-svn与src-gitsvn src-git与src-git-full src-cpy与src-link 其 ...
- 通过类名引用静态成员方法和通过super引用父类的成员方法
package com.yang.Test.StaticMethodReference; /** * 通过类型引用静态成员方法 * 类已经存在,静态成员方法也已经存在 * 就可以通过类名直接引用静态成 ...