SharePlex实施文档以及常见故障 - 图文(9)

2019-09-01 23:43

by你好我是李白

7.4 AA复制中Post不处理问题

7.4.1 复制环境

环境 Oracle版本 SharePlex版本 操作系统 源端 11.2.0.4 RAC 8.6.4 AIX 6100 目标端 11.2.0.4 RAC 8.6.4 RHEL 5.8 7.4.2 问题描述

链路搭建完毕之后,对链路进行选取SCN,使用expdp进行数据初始化,数据初始化完成之后,在目标端reconcile队列数据,启动post之后,post一致呈现下图的状态。

by你好我是李白

7.4.3 解决方案

(1) sp_ctrl>stop post (2) sp_ctrl>show

确认post已经处于stopped by user状态

(3) 使用sqlplus登入SharePlex用户(如果你有多个SharePlex端口,确定你登录的是正确的用户)

(4) truncate table .shareplex_trans (5) sp_ctrl> start post

7.5 AA复制中跳过复制对象问题

7.5.1 问题描述

在oracle到oracle复制环境中,当源端创建一些比较大的临时表时,如果复制链路中配置了通配符,将这些并不需要的临时表加入到了复制对象中,需要在目标端post队列中去掉这些对象时,此时源端已经将这些对象删除,无法查找object_id,并使用参数SP_OPO_DISABLE_OBJECT_NUM跳过。

7.5.2 解决方案

On target:

$ export SP_SYS_VARDIR= $ ./sp_ctrl

sp_ctrl> qstatus >>查看队列名称 sp_ctrl> exit $ qview–i qview> qinit

qview> open p r >>如果有多个队列,则根据提示选择自己的队列 qview> set detail full

by你好我是李白

qview>set out

qview > oread 0 100000 >>输出队列消息的十万行 qview> exit

然后查看当前目录输出的qview.out文件,打开并查找需要跳过的对象表名,找到obj_id。 $ ./sp_ctrl

sp_ctrl> set param SP_OPO_DISABLE_OBJECT_NUM sp_ctrl> qstatus

可以查看是否已经跳过临时对象。

7.6 AA复制中POST异常退出日志未记录报错

7.6.1 问题描述

Post will not open more than 290 cursors SR:4154302 2017年11月16日

AA复制链路中,之前由于post进程报找不到object_id,然后在队列中找到,object_id对应的表,确认表之后,在目标端设置

SP_OPO_DISABLE_OBJECT_NUM参数,跳过了TDS用户下的Q0,Q1,Q2,Q3表,昨天客户需要将这四张表重新加入到队列中,具体做法如下: 1.目标端停止post

2.在源端编辑配置文件,在原队列spdx中使用not,排除掉Q0~Q3这四张表,并在config文件中增加一行,复制TDS下Q0~Q3这四张表队列名字取名spdx05,verify config,activate config。

3.目标端reset param SP_OPO_DISABLE_OBJECT_NUM,并将除spdx05外的其他队列启动。

4.在源端基于SCN导出并在目标端导入四张表数据时,发现目标端spdx队列post进程due to error,查看日志,日志中并未记录post报错原因,event_log记录如下:

by你好我是李白

Info 2017-11-15 17:25:55.711464 20118 2902460992 Poster exited with code=1, pid = 5822 (posting from spdx, queue spdx, to spdxtar)

Notice 2017-11-15 17:27:15.492659 3280 2928380048 User command: splex start post queue spdx (from eb-tardb01-vip)

Info 2017-11-15 17:27:15.493487 7635 2902460992 Poster launched, pid = 7635 (posting from spdx, queue spdx, to spdxtar)

Notice 2017-11-15 17:27:16.580345 7635 2916102000 Poster: SQL Cache disabled. (posting from spdx, queue spdx, to spdxtar) [module opo] Info 2017-11-15 17:27:37.587999 20118 2902460992 Poster exited with code=1, pid = 7635 (posting from spdx, queue spdx, to spdxtar) post进程日志如下:

opo 2017-11-15 17:27:18.739051 7635 2916102000 src host/sid/queue=spclecsource:spdx:spdx

opo 2017-11-15 17:27:18.814391 7635 2916102000 call KillOpstModule(Post-10001-spdx-spdx)

opo 2017-11-15 17:27:18.823908 7635 2916102000 Post will not open more than 290 cursors per session (OPEN_CURSORS - 10)

opo 2017-11-15 17:27:18.823930 7635 2916102000 Max data segment: hard limit=NONE

opo 2017-11-15 17:27:18.823935 7635 2916102000 Max data segment: soft limit=NONE

opo 2017-11-15 17:27:18.823940 7635 2916102000 Max file descriptor: hard limit=1024

opo 2017-11-15 17:27:18.823945 7635 2916102000 Max file descriptor: soft limit=1024

opo 2017-11-15 17:27:18.835679 7635 2916102000 Oracle version 112 - Enterprise Edition #cpu = 24Sol

7.6.2 问题原因

操作系统使用非oracle用户安装配置SharePlex,但是并未在

/etc/security/limits.conf文件中配置该用户资源使用限制,所以该用户使用默认打开文件数1024。

by你好我是李白

在分割队列时,启动新的queue,在目标端有新的post进程,打开文件数进一步上升超过1024,导致进程异常退出,但是event_log日志中并未记录相关报错信息。

7.6.3 问题解决

From post log, it seems open files is set to 1024. There are many sessions for post, you may need to increase open file descriptors.

Please do following to shutdown sp_cop

sp_ctrl> shutdown

ulimit -n 8192 ulimit -aS

it should show 8192 for open file descriptors

then start SharePlex

./sp_cop &

./sp_ctrl> start post

Please let me know if this resolves issue. If this still does not resolve the issue please set post debug and send me the *opo*.log file.

sp_ctrl> set param SP_OPO_DEBUG_FLAG 0x1f0001ff sp_ctrl> start post

Once post is stopped, then turn off debug sp_ctrl> reset param SP_OPO_DEBUG_FLAG


SharePlex实施文档以及常见故障 - 图文(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017学年第一学期金山区高二地理期终试卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: