1403:

ORA-01403: No data found
在运行PL/SQL块、存储过程、函数、触发器等,假设须要进行操作的记录没有查询到。则会返回1403的错误
Goldengate中的1403
在目标段复制进程中,godengate从日志中解析出sql语句,依据sql语句的where条件。在目标段的库中匹配不出对应的记录

1403错误原因:
1. 附加日志相关

• 数据相关
• 表结构不一致/索引重建

常见问题:
1.生产端I/O过大、内存占用过大
配置了多个Extract进程导致
2.进程“假死”
1>參数配置错误: TRANLOGOPTIONS rawdeviceoffset 0
此參数仅仅在AIX使用裸设备时配置。其它环境不能配置
2>查看进程处理状态:
GGSCI>send repxxx, status
send repxxx status
Sending STATUS request to REPLICAT REPXXX ...
Current status: Processing data
Sequence #: 1
RBA: 3861681
21157 records in current transaction
3、RAC节点时钟不同步(OGG-01028)
1> 配置參数:
THREADOPTIONS MAXCOMMITPROPAGATIONDELAY 90000 IOLATENCY 90000
2> 配置NTP时钟同步server

4、队列文件不自己主动删除
1>实施时。运行了多次:
ADD EXTTRAIL 。。。

ADD RMTTRAIL 。。。
2>处理细节參照运维文档进行处理

5、參数文件里username处理
1> TRANLOGOPTIONS EXCLUDEUSER USERNAME
这里的USERNAME是须要替换为实际的GoldenGateusername

6、參数文件里字符集处理
1> setenv (NLS_LANG=“AMERICAN_AMERICA.ZHS16GBK”)
这里的AMERICAN_AMERICA.ZHS16GBK是须要替换为实际数据库的字符集设置

7、參数文件里压缩參数
1> RMTHOST *.*.*.*, MGRPORT 7839, compress
这里compress一定要配置,加快传输速度,降低datapump的延迟

9、容灾端入库性能优化
1> 无主键表建议添加主键或唯一索引
2> 将大表单独拆分为独立的进程,添加參数:
BATCHSQL


OGG怎样跳过长事务?
GGSCI (cdla6702.netjets.com) 13> send extract EXT1I2D4, showtrans

Sending SHOWTRANS request to EXTRACT EXT1I2D4 ...

Oldest redo log file necessary to restart Extract is:



Redo Log Sequence Number 4762, RBA 77272080

-----------------------------------------------------------

XID: 3.9.209025

Items: 0

Extract: EXT1I2D4

Redo Thread: 1

Start Time: 2014-03-22:00:11:06

SCN: 14.1966161432 (62095703576)

Redo Seq: 4762

Redo RBA: 77272080

Status: Running
send extract EXT1I2D4, skiptrans 3.9.209025  
---->>>此处应该为XID。不是SCN


Question

    Can I turn on the Oracle Supplemental Log at the DB Level only, without doing it at the Table Level?





Answer

    GoldenGate requires adding Supplemental Logging at the Table Level, regardless of the Database Supplemental setting, due to issues with Multiple Unique Keys and/or lack of Keys.



    It is highly recommended to use "ADD TRANDATA" under the GGSCI interface.  If using
the SQL command to add Supplemental Logging at the Table Level, ALL the keys should be included (ex.  2 separate Unique Keys are all required).


怎样打开附加日志:
To turn on supplemental logging at the database level, GoldenGate requires this command to be executed:



ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;



This change to add supplemental logging will not take effect until the current redo log is switched, so the following command must also be executed:



ALTER SYSTEM SWITCH LOGFILE.



(Note: You must have the ALTER DATABASE and ALTER SYSTEM privileges to execute the above sql statements.)



To turn on supplemental logging at the table level, you can execute this command:



alter table <table_name> add supplemental log group ggs_mytab (<column_name>, <column_name>) always;



(Note: You must have the ALTER TABLE privilege to execute the above sql statement.)



Or you can turn on supplemental logging through GGSCI with this command:



GGSCI> dblogin userid <user>, password <pw>



GGSCI> add trandata <schema>.<table>

怎样确定附加日志是否打开:
1> 数据库级别
select SUPPLEMENTAL_LOG_DATA_MIN, SUPPLEMENTAL_LOG_DATA_PK, SUPPLEMENTAL_LOG_DATA_UI,
FORCE_LOGGING from v$database;

2> 表级别
select * from dba_log_groups where
OWNER='<schema_name_in_upper_case>' and TABLE_NAME='<table_name_in_upper_case>';
 ---假设有数据返回,则说明附加日志已经打开。反之没有打开

For a particular table, you can find which columns are part of the Supplemental Log group with the query below:

select LOG_GROUP_NAME, COLUMN_NAME, POSITION from 

dba_log_group_columns

where OWNER='<schema_name_in_upper_case>' and 

TABLE_NAME='<table_name_in_upper_case>'

order by position;

For a particular table, you can find out if Supplemental Logging is turned on through GGSCI with the commands below:

GGSCI> dblogin userid <user>, password <pw>

GGSCI> info trandata <schema>.<table>

select distinct a.sql_id,a.event,b.sql_text from v$session a,v$sql b where  a.username='GGUSER' and a.program like 'replicat%'
and a.status='ACTIVE' and a.sql_id=b.sql_id;


-----------------自己整理的

OGG常见问题处理的更多相关文章

  1. Goldengate OGG常见问题与错误列表

     Goldengate OGG常见问题与错误列表  以下列出了OGG一些常见的问题与错误及其解答:   Note: 966211.1 How To Resync A Single Table With ...

  2. 转 OGG 部署阶段常见问题

    序号 问题 解决方案1 "2019-04-13 20:23:55 ERROR OGG-00868 Oracle GoldenGate Capture for Oracle, e_db1.pr ...

  3. H5项目常见问题汇总及解决方案(果断复制粘贴,不解释)

    H5项目常见问题及注意事项 Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 //一.HTML页面结构 <meta name="viewport" co ...

  4. H5项目常见问题及注意事项

    Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 //一.HTML页面结构 <meta name="viewport" content="wi ...

  5. H5项目常见问题

    转自 https://github.com/FrontEndZQ/HTML5-FAQH5项目常见问题及注意事项 Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面//一.HTML页 ...

  6. H5项目常见问题汇总及解决方案

    H5项目常见问题汇总及解决方案 H5   2015-12-06 10:15:33 发布 您的评价:       4.5   收藏     4收藏 H5项目常见问题及注意事项 Meta基础知识: H5页 ...

  7. html5常见问题

    H5项目常见问题汇总及解决方案 2016-12-21 FrontEndZQ JavaScript 转自 https://github.com/FrontEndZQ/HTML5-FAQ H5项目常见问题 ...

  8. H5项目常见问题及注意事项,视频全屏,定位,屏幕旋转和触摸,偏页面重构向 来源joacycode的github

    Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 //一.HTML页面结构 <meta name="viewport" content="wi ...

  9. h5前端项目常见问题汇总

    原文作者:FrontEndZQ 原文链接:https://github.com/FrontEndZQ/HTML5-FAQ H5项目常见问题及注意事项 Meta基础知识: H5页面窗口自动调整到设备宽度 ...

随机推荐

  1. What is NetApp's Cluster File System?

    Data ONTAP GX: A Scalable Storage Cluster www.usenix.org/event/fast07/tech/full_papers/eisler/eisler ...

  2. BOOST 线程完全攻略 - 扩展 - 可被关闭的线程类

    本文假设读者已经基本了解boost线程库的使用方法. boost是个开源工程,线程这一块也在不断完善之中,到现在这个阶段,boost::thread仅仅实现了一个完美的技术框架,但是读者在实际使用中会 ...

  3. OC中限制UITextView的最大字数的实现

    一.属性 //自定义的textview @property (weak, nonatomic) IBOutlet UITextView *textview; //添加一个bool类型的属性 @prop ...

  4. String.format Tutorial

    String format(String format, Object... args) The format specifiers for general, character, and numer ...

  5. mysql导入.sql文件

    1. source /home/susie ...../**.sql 2. \. /home/susie/.../**.sql 批量导入.sql文件 首先新建一个main.sql,然后在main.sq ...

  6. python - list, cllections模块的deque对象

    list.count() list.pop()/list.pop(i) list.insert(i,element) list.sort()和sorted(list) list.reverse()和r ...

  7. Flask的session——关于写扩展所学习到的

    这两天端午节.趁着端午节没事干,写了个flask的扩展--flask-RedisSession 在flask中使用该扩展可以让你借助redis数据库轻松获得server-side session. 这 ...

  8. djangoPOST请求403 forbidden

    处理过程 网上搜索修改setting.py,在MIDDLEWARE_CLASSES增加django.middleware.csrf.CsrfResponseMiddleware  没能解决问题 有说在 ...

  9. 异常处理与调试3 - 零基础入门学习Delphi52

    异常处理与调试3 让编程改变世界 Change the world by program 两种结构的嵌套 要在一个过程里同时实现处理异常和保护资源分配,关键要保证"try-except&qu ...

  10. 小希的迷宫(HDU 1272 并查集判断生成树)

    小希的迷宫 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...