解决方案 »
- 在fedora9中安装oracle11g 时遇到的些问题,麻烦大家进来看看!
- 急!分区表建在日期字段上,主键是其他字段,在每个分区上物理数据顺序是怎样?
- if 条件1 成立 then 执行 select 1 from a elseif if 条件2 成立 select 1 from b
- 数据插入问题,没分啦,请帮助!
- 我要在hp-ux11iV3下安装oracle10g(10.2.0.1),但不懂具体要打什么补丁,请问去哪获得该要打什么补丁呢?
- 保留Table数据能修改字段类型吗?
- 我恢复了一个数据库,为什么触发器不起作用了,我重编,什么都是好的,为什么??
- 如何将NLS_CHARACTERSET由UTF8改成JA16SJIS?
- 再问初级问题:)
- Oracle7.3升级到8.1.7出现问题
- oracle存储过程中创建java source遇到的问题
- 大家来帮我看一个异常,我在PLSQL上连接数据库是没有问题。但是现在在JDBC中就出现问题了。
官方说明如下:
APPLIES TO:Oracle GoldenGate - Version 11.1.1.0.0 and later
Information in this document applies to any platform.
SYMPTOMSExtract report shows following messages:2012-03-05 09:14:54 WARNING OGG-00723 Oracle GoldenGate Capture for Oracle, ext_bi.prm: Record with class# 34, slt# 4, at seqno 77324,
rba 32995856 SCN 27.2929925862 (118894042854) has secondary transaction ID that is duplicate of existing open uncommitted transaction.2012-03-05 09:14:54 WARNING OGG-00715 Oracle GoldenGate Capture for Oracle, ext_bi.prm: [Thread #1] Purging transaction
(transaction id: 9.4.26367119, start time: 2012-03-05 09:11:35, start seqno: 77323, start RBA: 154945040).2012-03-05 09:14:54 WARNING OGG-00712 Oracle GoldenGate Capture for Oracle, ext_bi.prm: Updating I/O checkpoint after purging
orphaned transactions on thread 1 with current position (Seq#: 77324, RBA: 32998564). s CAUSEThis is due to the presence of XA (distributed transactions).This can be verified by running the following query:sql> spool output.txtset headin off
select /*+ ORDERED */
'-------- Found Global XID -----------------------'||'
Current Time : '|| substr(to_char(sysdate,'dd-Mon-YYYY HH24.MI.SS'),1,22) ||'
'||'Ascii GTXID='||g.K2GTITID_ORA
from x$k2gte g;
set headin off
select /*+ ORDERED */
'----------------------------------------'||'
Curent Time : '|| substr(to_char(sysdate,'dd-Mon-YYYY HH24.MI.SS'),1,22) ||'
'||'GTXID='||substr(g.K2GTITID_EXT,1,10) ||'
'||'Ascii GTXID='||g.K2GTITID_ORA ||'
'||'Branch= '||g.K2GTIBID ||'
Local TX Id ='||substr(t.KXIDUSN||'.'||t.kXIDSLT||'.'||t.kXIDSQN,1,10) ||'
'||'KTUXESTA='|| x.KTUXESTA ||'
'||'KTUXEDFL='|| x.KTUXECFL
from x$k2gte g, x$ktcxb t, X$KTUXE x
where g.K2GTDXCB =t.ktcxbxba and
x.KTUXEUSN = t.KXIDUSN(+) and
x.KTUXESLT = t.kXIDSLT(+) and
x.KTUXESQN =t.kXIDSQN(+);set headin onsql> spool offExtract/ Classic Extract encountered a shutdown of an instance, and is purging any transactions that are open on that instance.
Extract/ Classic Extract does not have the capability to handle XA transactions on RAC. It may purge XA transactions that would eventually
commit. Note the first warning (secondary transaction ID that is duplicate of existing open uncommitted transaction) suggests that we have encountered
XA on RAC.There can be data loss (precisely in such cases where an instance with an XA branch crashes and the crashed XA txn is recovered in another instance).SOLUTIONUpgrade to OGG v11.2 and configure "Integrated Extract" which supports XA transactions.How To Upgrade From Goldengate Classic Extract To Integrated Extract (Doc ID 1484313.1)For environments using Classic Extract, the following can be used as a work-around_clusterwide_global_transactions=false1. What is the impact of setting "_clusterwide_global_transactions"=falseThis will ensure that ALL branches of XA goes to the same Oracle instance. However if the instance fails the whole XA transaction will roll back.
This will only impact incoming distributed transactions.2. For existing connections will it be transparent ?It is not transparent. We still have to setup services to accept XA connections.From the Oracle 10.2 doc:
For services that you are going to use for distributed transaction processing, create the service using Enterprise Manager, DBCA, or SRVCTL and
define only one instance as the preferred instance. You can have as many AVAILABLE instances as you want. For example, the following SRVCTL command
creates a singleton service for database crm, xa_01.service.us.oracle.com, whose preferred instance is RAC01:eg., srvctl add service -d crm -s xa_01.service.us.oracle.com -r RAC01 -a RAC02, RAC03For incoming transactions we will have to set up the services as explained above. Then the service for distributed transaction processing by
setting the DTP parameter to TRUE; the default is FALSE. Enterprise Manager enables you to set this parameter on the Cluster Managed Database Services: Create
Service or Modify Service page. You can also use the DBMS_SERVICE package to modify the DTP property of the singleton service as follows:eg., EXECUTE DBMS_SERVICE.MODIFY_SERVICE(service_name=>'xa_01.service.us.oracle.com', DTP=>TRUE);If, for example, RAC01 which provides service XA_01 fails, then the singleton service that it provided fails over to one of the other instances, such as
RAC02 or RAC03.Additional details on XA transactions are available in following documenthttp://www.oracle.com/technetwork/products/clustering/overview/distributed-transactions-and-xa-163941.pdf
如果该分布式事务只是出现在查询中,不造成数据的变化,应该问题不大。否则可能造成同步进程中断