暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

分布式数据库学习Note199:OceanBase社区版中,如何解决系统内存不足/泄漏的问题?

欢迎访问OceanBase官网获取更多信息:https://www.oceanbase.com/


在 OceanBase 中,除了业务租户的 MEMstore 内存满导致写入阻塞的的场景,还有一些其他模块的内存不足或泄漏导致的写入或者查询问题,例如 500 租户、sys 租户等。本文介绍系统模块内存不足或泄漏的应急处理方法。

应急处理方法

对于 OB 系统模块内存不足或泄漏,一般原因是遇到特殊场景或者触发了软件 bug ,应急处理时一般处理方法为隔离或重启问题节点。

重启 OBServer 节点

对于系统内部模块的内存问题,一般考虑重启 OBServer 节点解决。建议您通过 OCP 执行指定节点的重启操作,重启 OBServer 节点详细信息请参见 启动 OBServer 服务 和 停止 OBServer 服务

隔离问题节点或副本

内部模块发生疑似内存泄漏或者内存不足的场景时,对于重启节点无法解决的情况,可以考虑隔离问题节点。

  1. 针对问题节点,可以采取 stop server 操作,请参考如下语句。

    ALTER SYSTEM STOP SERVER 'ip:port' [,'ip:port'...] [ZONE='zone']
    

    示例:

    alter system stop server '10.0.0.0.:2882' zone='z1;
    

    更多运维 zone 的详细信息请参见 停止 OBServer 服务

  2. 除了隔离问题节点,根据不同情况,还可以将问题发生的副本整体做 stop zone 隔离,请参考如下语句。

     ALTER SYSTEM STOP ZONE zoneid;
    

    示例:

    ALTER SYSTEM STOP ZONE z4;
    

    更多运维 zone 的详细信息请参见 停机运维 zone


欢迎访问OceanBase官网获取更多信息:https://www.oceanbase.com/

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论