ALLSTARS_ORACLE 发表于 2013-11-3 22:56:43

goldengate OGG-01027(长事务)

goldengate OGG-01027(长事务)

在extract中添加:
WARNLONGTRANS 2h,CHECKINTERVAL 3m
ggserr.log文件中会记录大事务警告
WARNING OGG-01027  Long Running Transaction: XID 82.4.242063, Items 0, Extract YX_EXT1, Redo Thread 1, SCN 2379.2132775890 (10219859973074), Redo Seq #5688, Redo RBA 195997712.
GGSCI> send extract xxx, showtrans
thread n是可选的,表示只查看其中一个节点上的未提交交易;
count n也是可选的,表示只显示n条记录。
例如:查看xxx进程中节点1上最长的10个交易,可以通过下列命令:
GGSCI> send extract extsz , showtrans thread 1 count 10
记录XID,通过DBA查找具体的长交易执行的内容
GGSCI> SEND EXTRACT xxx, SKIPTRANS <82.4.242063> THREAD <2> //跳过交易
GGSCI>SEND EXTRACT xxx, FORCETRANS <82.4.242063> THREAD <1> //强制认为该交易已经提交
使用这些命令只会让GoldenGate进程跳过或者认为该交易已经提交,但并不改变数据库中的交易,他们依旧存在于数据库中。因此,强烈建议使用数据库中提交或者回滚交易而不是使用GoldenGate处理。
查找长事务对应的SQL语句:
XID由三部分组成:XIDUSN.XIDSLOT.XIDSQN
通过以下语句查找对应的SQL语句
select /*+ rule*/b.USERNAME,b.SCHEMANAME,b.OSUSER,b.MACHINE,c.SQL_TEXT
from v$transaction a, v$session b, v$sql c
where a.XIDUSN = 5
   and a.XIDSLOT = 42
   and a.XIDSQN = 1920
   and a.ADDR = b.TADDR
   and b.SQL_ADDRESS = c.ADDRESS
   and b.SQL_HASH_VALUE = c.HASH_VALUE;
页: [1]
查看完整版本: goldengate OGG-01027(长事务)