溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

goldengate單獨(dú)一個(gè)表數(shù)據(jù)不同步解決方法

發(fā)布時(shí)間:2020-07-27 07:35:45 來(lái)源:網(wǎng)絡(luò) 閱讀:1330 作者:z597011036 欄目:數(shù)據(jù)庫(kù)

   補(bǔ)充日志只要是針對(duì)UPDATE命令的,是對(duì)重做日志記錄中變更矢量塊的補(bǔ)充信息,增加了變更矢量記載的記錄量。日志挖掘器(LogMiner)、閃回事務(wù)查詢(xún)、閃回事務(wù)等都需要補(bǔ)充日志的支持。也就是說(shuō)補(bǔ)充日志主要是為UPDATE命令服務(wù)的,補(bǔ)充的目的是高度還原UPDATE命令,避免因?yàn)閡pdate命令造成的行遷移和行移動(dòng),讓LogMiner 通過(guò)分析重做日志中識(shí)別update 命令不是由insert和delete完的。


數(shù)據(jù)庫(kù)級(jí)補(bǔ)充日志分為:最小補(bǔ)充日志、標(biāo)識(shí)關(guān)鍵字段補(bǔ)充日志
(1).最小補(bǔ)充日志:是最基本的一種數(shù)據(jù)庫(kù)級(jí)補(bǔ)充日志,而LogMiner正是依賴(lài)最小補(bǔ)充日志工作服務(wù)的(即識(shí)別 行移動(dòng) 行遷移)。
    啟用最小補(bǔ)充日志命令:
        alter database add supplemental log data;
    關(guān)閉最小補(bǔ)充日志命令:
        alter database drop supplemental log data;

(2).標(biāo)識(shí)關(guān)鍵字段補(bǔ)充日志:分為主鍵、外鍵、唯一索引、全體字段補(bǔ)充日志 4種。
   主鍵補(bǔ)充日志:在update命令的重做記錄中添加被修改行的主鍵字段的舊值,無(wú)論是否被修改,都記錄。如果表沒(méi)有主鍵,則由長(zhǎng)度最小的唯一索引字段代替,若連唯一索引也沒(méi)有,則記錄該行所有字段.

     alter database add supplemental log data (Primary key) columns;
  唯一索引補(bǔ)充日志:唯一索引主要是為復(fù)合索引(唯一)服務(wù)的。只有唯一索引的字段被update時(shí),才會(huì)記錄該字段被修改前的值。
     alter database add supplemental log data (unique) columns;
  外鍵補(bǔ)充日志:同唯一索引補(bǔ)充日志一樣,只有外鍵字段被update時(shí),才會(huì)記錄被修改前的舊值,即也是為復(fù)合外鍵服務(wù)的。
     alter database add supplemental  log data (foreign key ) columns;
  全體字段補(bǔ)充日志:顧名思義就所有字段的值不論是否被修改都記錄。會(huì)導(dǎo)致磁盤(pán)快速增長(zhǎng),LGWR進(jìn)程繁忙。不建議使用。
     alter database add supplemental log data (all) columns;

表級(jí)補(bǔ)充日志:
   分為: 主鍵、唯一索引、外鍵、全體字段、用戶(hù)自定義字段5種。
   前4種同數(shù)據(jù)庫(kù)級(jí) 標(biāo)識(shí)關(guān)鍵字段補(bǔ)充日志效果用法一樣。只不過(guò)是在特定表上啟用補(bǔ)充日志
   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.查看數(shù)據(jù)庫(kù)是否開(kāi)啟補(bǔ)充日志

SQL> SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;    --開(kāi)啟了補(bǔ)充日志
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           --只開(kāi)啟了主鍵的補(bǔ)充日志
-------- --- --- --- ---
YES     NO  NO  NO  NO

SQL>


2.查看表是否添加到補(bǔ)充日志中

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

SQL>


3.解決方法(1)

GGSCI (iZ23jtzbnliZ) 35> dblogin userid ggs,password system   --EXTRACT進(jìn)程里的用戶(hù)名和密碼

Successfully logged into database.

GGSCI (iZ23jtzbnliZ) 36> add TRANDATA tong.abc    --添加補(bǔ)充日志(tong是數(shù)據(jù)庫(kù),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>

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI