goldengate单独一个表数据不同步解决方法
admin
2023-05-22 12:42:34
0

   补充日志只要是针对UPDATE命令的,是对重做日志记录中变更矢量块的补充信息,增加了变更矢量记载的记录量。日志挖掘器(LogMiner)、闪回事务查询、闪回事务等都需要补充日志的支持。也就是说补充日志主要是为UPDATE命令服务的,补充的目的是高度还原UPDATE命令,避免因为update命令造成的行迁移和行移动,让LogMiner 通过分析重做日志中识别update 命令不是由insert和delete完的。


数据库级补充日志分为:最小补充日志、标识关键字段补充日志
(1).最小补充日志:是最基本的一种数据库级补充日志,而LogMiner正是依赖最小补充日志工作服务的(即识别 行移动 行迁移)。
    启用最小补充日志命令:
        alter database add supplemental log data;
    关闭最小补充日志命令:
        alter database drop supplemental log data;

(2).标识关键字段补充日志:分为主键、外键、唯一索引、全体字段补充日志 4种。
   主键补充日志:在update命令的重做记录中添加被修改行的主键字段的旧值,无论是否被修改,都记录。如果表没有主键,则由长度最小的唯一索引字段代替,若连唯一索引也没有,则记录该行所有字段.

     alter database add supplemental log data (Primary key) columns;
  唯一索引补充日志:唯一索引主要是为复合索引(唯一)服务的。只有唯一索引的字段被update时,才会记录该字段被修改前的值。
     alter database add supplemental log data (unique) columns;
  外键补充日志:同唯一索引补充日志一样,只有外键字段被update时,才会记录被修改前的旧值,即也是为复合外键服务的。
     alter database add supplemental  log data (foreign key ) columns;
  全体字段补充日志:顾名思义就所有字段的值不论是否被修改都记录。会导致磁盘快速增长,LGWR进程繁忙。不建议使用。
     alter database add supplemental log data (all) columns;

表级补充日志:
   分为: 主键、唯一索引、外键、全体字段、用户自定义字段5种。
   前4种同数据库级 标识关键字段补充日志效果用法一样。只不过是在特定表上启用补充日志
   1.alter table tb_name add supplemental log data (primary key) columns;
   2.alter table tb_name add supplemental log data (unique) columns;
   3.alter table tb_name add supplemental log data (foreign key) columns;
   4.alter table tb_name add supplemental log data (all) columns;
   5.alter table tb_name add supplemental log group group_name (col01,col02,col05,col09) | always;


1.查看数据库是否开启补充日志

SQL> SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;    --开启了补充日志
SUPPLEME
--------
YES
SQL> SELECT supplemental_log_data_min,supplemental_log_data_pk,supplemental_log_data_ui,

supplemental_log_data_fk,supplemental_log_data_all FROM v$database;
SUPPLEME SUP SUP SUP SUP           --只开启了主键的补充日志
-------- --- --- --- ---
YES     NO  NO  NO  NO

SQL>


2.查看表是否添加到补充日志中

SQL> select * from dba_log_groups where table_name='abc';    --查看表是否有补充日志
no rows selected
SQL> select * from dba_log_group_columns  where table_name='abc';   --查看补充日志的字段
no rows selected

SQL>


3.解决方法(1)

GGSCI (iZ23jtzbnliZ) 35> dblogin userid ggs,password system   --EXTRACT进程里的用户名和密码

Successfully logged into database.

GGSCI (iZ23jtzbnliZ) 36> add TRANDATA tong.abc    --添加补充日志(tong是数据库,abc是表名)
Logging of supplemental redo data enabled for table  UPCENTER.NEWS_FLASH_TAB_CLAS_RELA.
GGSCI (iZ23jtzbnliZ) 37>


3.解决方法(2)

SQL> alter table abc add supplemental log data(all,primary key,unique,foreign key) columns;

SQL>

相关内容

热门资讯

制胜|第六集《联战联胜》大图速... 思想解读类融媒体片《制胜》今日收官第六集《联战联胜》震撼上新2016年2月1日习主席向五大战区授予军...
我国经济动能向新结构向优(读数... 四川省达州市通川区北山镇丰登村的麦田间,农民将刚收割的小麦装车。邓良奎摄(人民视觉)数据来源:国家统...
“意大利、德国还好意思指责西班... 一边高调批评西班牙的移民大赦政策“吸引非法移民”,一边却悄悄为本国非法入境者大开绿灯——意大利、德国...
电脑如何与打印机连接 打印机的种类很多,按打印元件对纸是否有击打动作,分击打式打印机与非击打式打印机。那么电脑如何与打印机...
怎么在电脑上添加打印机步骤 在现代社会,打印机是一个非常重要的办公设备,它能够将电子文件转化为实体纸质文件。然而,许多人在次使用...
电脑如何添加打印机驱动程序 电脑在跟打印机一起使用的`时候,我们要在电脑上安装好相应的驱动程序才行。那么电脑如何添加打印机驱动程...
韦唯回忆10年跨国婚姻:完全就... 近日,韦唯直言嫁给瑞典钢琴家完全就是上当,没爱过他。结婚前不知道对方比自己大25岁,表面光鲜的10年...
打印机与电脑如何连接打印 首先把电脑和打印机之间的连线在专用接口连接起来,下一步在电脑上点击“添加打印机”的选项。选择“添加本...
如何在电脑上安装打印机 电脑上... 电脑上安装打印机只需要在设置选项中找到打印机按要求添加即可。具体步骤如下:1.插入电源并把打印机us...
日本2026年度防务白皮书,用... 日本政府于今日在防卫省官网上披露了其2026年度的国防白皮书。其中,日本方面提出一套极具争议的新叙事...