OGG mgr 进程无法启动问题解析

时间:2016-03-16 09:46:54   收藏:0   阅读:6864

在迁移数据库的时候,遇到一个比较奇怪的问题

在ogg中运行  start mgr

界面中提示mgr已经运行,但是通过 info all命令查看 mgr进程还是stop状态

随后去dirrpt目录查看mgr进程日志,发现ogg报错信息如下:

cd dirrpt

cat MGR.rpt


Source Context :

  SourceModule            : [ggdb.ora.sess]

  SourceID                : [/scratch/aime1/adestore/views/aime1_adc4150256/oggcore/OpenSys/src/gglib/ggdbora/ocisess.c]

  SourceFunction          : [oci_try]

  SourceLine              : [642]

  ThreadBacktrace         : [14] elements

                          : [/opt/ggs/libgglog.so(CMessageContext::AddThreadContext()+0x1e) [0x2adda13be06e]]

                          : [/opt/ggs/libgglog.so(CMessageFactory::CreateMessage(CSourceContext*, unsigned int, ...)+0x2cc) [0x2adda13ba44c]]

                          : [/opt/ggs/libgglog.so(_MSG_ERR_ORACLE_OCI_ERROR_WITH_DESC(CSourceContext*, int, char const*, char const*, CMessageFactory::Messa

geDisposition)+0x41) [0x2adda13a68b7]]

                          : [./mgr(OCISESS_context_def::oci_try(int, char const*, ...)+0x4e0) [0x4f2070]]

                          : [./mgr(OCISESS_context_def::logon(ggs::gglib::ggapp::CLoginName const&, ggs::gglib::ggapp::CDBObjName<(DBObjType)12> const&, ggs

::gglib::ggunicode::UString const&, int, bool, int, int, int)+0x86f) [0x4f346f]]

                          : [./mgr(DBOCI_init_connection_logon(ggs::gglib::ggapp::CLoginName const&, ggs::gglib::ggapp::CDBObjName<(DBObjType)12> const&, ch

ar const*, int, int, int, char*)+0xd6) [0x4d8b26]]

                          : [./mgr [0x4ebbf5]]

                          : [./mgr(gl_odbc_param(char const*, char const*, char*)+0x4c) [0x4ebf2c]]

                          : [./mgr(param_file_args(char*)+0x12d3) [0x4479e3]]

                          : [./mgr(init_functions(int, char**)+0x5f0) [0x448030]]

                          : [./mgr(main_loop(int, char**)+0x4c) [0x44e13c]]

                          : [./mgr(main+0xdc) [0x44e8bc]]

                          : [/lib64/libc.so.6(__libc_start_main+0xf4) [0x33a801d994]]

                          : [./mgr(__gxx_personality_v0+0x14a) [0x43a49a]]


2016-03-16 00:04:47  ERROR   OGG-00664  OCI Error beginning session (status = 1034-ORA-01034: ORACLE not available

ORA-27101: shared memory realm does not exist

Linux-x86_64 Error: 2: No such file or directory).


2016-03-16 00:04:47  ERROR   OGG-01668  PROCESS ABENDING.


看到这个错误感觉比较奇怪,Oracle实例没有启动的时候会报这个错误,但是我的实例已经启动了,为什么还是会报这个错误呢。

通过网络搜索资料也没有得到解决办法,随后便自己研究。

检查ogg用户,是否因为ogg用户组导致无法识别到实例:

[ggs@qfangsh2 dirrpt]$ id ggs

uid=1008(ggs) gid=1000(oinstall) groups=1000(oinstall),1001(dba),1004(asmdba)


检查ogg目录权限发现也没有问题。


查看mgr进程配置

GGSCI (qfangsh2) 2> view params mgr


DYNAMICPORTLIST 7840-7914

PORT 7809

PURGEOLDEXTRACTS /opt/ggs/dirdat/*****/*, USECHECKPOINTS, MINKEEPFILES 30

AUTORESTART ER *, RETRIES 3, WAITMINUTES 5

USERID ***, PASSWORD *******

PURGEDDLHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30

PURGEMARKERHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 5, FREQUENCYMINUTES 30

LAGREPORTHOURS 1

LAGINFOMINUTES 30

LAGCRITICALMINUTES 45


发现除了用户以外,也没有其他关于数据库的配置,此前怀疑ORACLE_HOME变量配置错误的想法也不攻自破了。

那么配置文件中没有相关参数的配置,ogg的mgr进程是通过什么来确定oracle实例呢?

后来想到是不是通过 ORACLE_SID 环境变量呢,就去检查一些环境配置,

结果发现ORACLE_SID配置成了另外一个节点的SID,修改正确,并且使其生效。


从新进入ogg客户端

./ggsci

start mgr

start *


GGSCI (******) 3> info all


Program     Status      Group       Lag at Chkpt  Time Since Chkpt


MANAGER     RUNNING                                           

EXTRACT     RUNNING     ******    00:00:09      00:00:05    

EXTRACT     RUNNING     ******     00:00:00      00:00:02    

EXTRACT     RUNNING     ******     00:00:00      00:00:00    

REPLICAT    RUNNING     ******     00:00:00      00:00:06    

REPLICAT    RUNNING     ******     00:00:00      00:00:03  


mgr进程正常启动,问题解决

遇到问题多想想,多检查一下,总是可以解决问题的


评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!