OGG-01224 Address already in use
Posted 「已注销」
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OGG-01224 Address already in use相关的知识,希望对你有一定的参考价值。
1, 启动manager也启动不了,会出现这个错误
[html] view plain copy- 2013-01-03 06:28:58 ERROR OGG-01224 Address already in use.
- 2013-01-03 06:28:58 ERROR OGG-01668 PROCESS ABENDING.
说明原来的 Golden Gate 的Manager进程还在工作,占用了端口,
运行下面命令,就可以找到它,然后使用 kill -9 process_id 杀掉,这时就可以启动Manager进程了
ps -ef | grep mgr
2,启动mgr进程之后,运行命令 info all 发现所有进程都 abended 了,所以运行 start * 启动所有进程,过了一会,发现除了replicat进程,extract和data dump进程全部abended了,因为replicat进程是只读进程,利用同样的参数文件运行的replicat进程,Golden Gate不会认为它们有什么威胁,所以全部正常启动,但其实你利用 ps -ef | grep replicat可以看到很多重复的replicat进程,不过以前的replicat进程应该不工作了。
不过小心!!!很有可能原来的replicat进程还没有检测到异常,而新的进程报错,认真检查会出现以下现象:
a,使用info all 该进程是正常 running,但是使用 info process_name 指定该进程的时候,可以看到状态是abended.
b,使用view report replicat_process_name可以看到出错信息如下:
[plain] view plain copy- 2013-01-06 23:39:59 ERROR OGG-00446 Unable to lock file "/u01/ggate/dirchk/replicat_tab5.cpr" (error 11, Resource temporarily unavailable). Lock current
- y held by process id (PID) 27946.
3,利用 view report extract_process_name 可以看到以下错误消息
[plain] view plain copy- 2013-01-03 06:42:19 ERROR OGG-01454 Unable to lock file "/ggdata/extract/dbservice1/schema1/t0000006" (error 11, Resource temporarily unavailable). Lock currently held by process id (PID) 26654.
- 2013-01-03 06:42:19 ERROR OGG-01668 PROCESS ABENDING.
说明,现在已经有一个PID在锁住当前这个文件,只要杀掉 26654这个进程,就能再次启动了,如此循环,把所有 extract的进程都启动
4, 利用view report dump_process_name 可以看到以下错误消息
[plain] view plain copy- 2013-01-03 07:04:45 ERROR OGG-01031 There is a problem in network communication, a remote file problem, encryption keys for target and source do not matc
- h (if using ENCRYPT) or an unknown error. (Reply received is Unable to open file "/ggdata/extract/dbservice1/schema1/t0000006" (error 11, Resource
- temporarily unavailable)).
- 2013-01-03 07:04:45 ERROR OGG-01668 PROCESS ABENDING.
说明dump无法打开目标端的文件,查看目标段的 ggserr.log可以看到以下信息
[plain] view plain copy- 2013-01-03 06:37:59 WARNING OGG-01223 Oracle GoldenGate Collector for Oracle:
- Unable to lock file "/ggdata/extract/dbservice1/schema1/t000006" (error 11, Resource temporarily unavailable).
- Lock currently held by process id (PID) 16795.
很明显,这个文件被目标段的进程所占用
- [ggate@jabtl1001 ~]$ ps -ef | grep 16795
- ggate 16795 29198 0 2012 ? 00:01:19 ./server -w 300 -p 7000-9000 -m 7810 -k -l /u01/ggate/ggserr.log
- ggate 23567 20017 0 07:31 pts/4 00:00:00 grep 16795
可以看出是目标段的server进程在保护这个文件,启动data dump的时候,目标段会再启动一个文件对其进行写入,这时就产生冲突了。
所以需要把这个子进程杀掉即可 kill -9 16795
这时data dump的process 应该可以启动了
实际上,不能确定现在他们就能正常通信或者复制数据了。还是需要再测试一下,因为很可能会出现两种情况
a, 该抓取的已经抓取了,现在重新启动的extract process会不会重新抓取?所以要看情况是否需要修改其 begin now
b, data dump和extract的合作出现某些问题,和目标端的replicat的合作也出现了某些问题,这时文件号很可能不一致,需要具体情况具体分析。
以上是关于OGG-01224 Address already in use的主要内容,如果未能解决你的问题,请参考以下文章
[python] 解决OSError: Address already in use
Error, some other host already uses address
Address already in use: bind解决办法