openGauss学习笔记-190 openGauss 数据库运维-常见故障定位案例-服务启动失败

这篇具有很好参考价值的文章主要介绍了openGauss学习笔记-190 openGauss 数据库运维-常见故障定位案例-服务启动失败。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

openGauss学习笔记-190 openGauss 数据库运维-常见故障定位案例-服务启动失败

190.1 服务启动失败

190.1.1 问题现象

服务启动失败。

190.1.2 原因分析
  • 配置参数不合理,数据库因系统资源不足,或者配置参数不满足内部约束,启动失败。
  • 由于部分数据节点状态不正常,导致数据库启动失败。
  • 目录权限不够。例如对/tmp目录、数据库数据目录的权限不足。
  • 配置的端口已经被占用。
  • 开启了系统防火墙导致数据库启动失败。
  • 组成数据库的各台机器之间需要正确建立互信关系,在互信关系出现异常的情况下,数据库将无法启动。
  • 数据库控制文件损坏。
190.1.3 处理办法
  • 确认是否由于参数配置不合理导致系统资源不足或不满足内部约束启动失败。
    • 登录启动失败的节点,检查运行日志确认是否因资源不足启动失败或配置参数不满足内部约束。例如出现Out of memory的错误或如下错误提示均为资源不足或配置参数不满足内部约束导致的启动失败。
FATAL: hot standby is not possible because max_connections = 10 is a lower setting than on the master server (its value was 100)
  • 检查GUC参数配置的合理性。例如,shared_buffers、effective_cache_size、bulk_write_ring_size等消耗资源过大的参数;或max_connections等增加后不容易减少的参数。GUC参数的查看及设置方法,详情请参见配置运行参数

  • 确认是否由于实例状态不正常,导致数据库启动失败。通过gs_om -t status –detail工具,查询当前数据库各主备机实例的状态。

    • 如果某一节点上的所有实例都异常,请进行主机替换。

    • 如果发现某一实例状态为Unknown、Pending和Down的状态,则以数据库用户登录到状态不正常的实例所在节点,查看该实例的日志检查状态异常的原因。例如:

      2014-11-27 14:10:07.022 CST 140720185366288 FATAL:  database "postgres" does not exist 2014-11-27 14:10:07.022 CST 140720185366288 DETAIL:  The database subdirectory "base/ 13252" is missing.
      

      如果日志中出现上面这种报错信息,则说明该数据节点的数据目录文件遭到破坏,该实例无法执行正常查询,需要进行替换实例操作。

  • 目录权限不够处理办法。例如,对/tmp目录、数据库数据目录的权限不足。

    • 根据错误提示,确认权限不足的目录名称。
    • 使用chmod命令修改目录权限使其满足要求。对于/tmp目录,数据库用户需要具有读写权限。对于数据库数据目录,请参考权限无问题的同类目录进行设置。
  • 确认是否由于配置的端口已经被占用,导致数据库启动失败。

    • 登录启动失败的节点,查看实例进程是否存在。

    • 如果实例进程不存在,则可以通过查看该实例的日志来检查启动异常的原因。例如:

      2014-10-17 19:38:23.637 CST 139875904172320 LOG:  could not bind IPv4 socket at the 0 time: Address already in use 2014-10-17 19:38:23.637 CST 139875904172320 HINT:  Is another postmaster already running on port 40005? If not, wait a few seconds and retry.
      

      如果日志中出现上面这种报错信息,则说明该数据节点的TCP端口已经被占用,该实例无法正常启动。

      2015-06-10 10:01:50 CST 140329975478400 [SCTP MODE] WARNING: (sctp bind)         bind(socket=9, [addr:0.0.0.0,port:1024]):Address already in use  --  attempt 10/10 2015-06-10 10:01:50 CST 140329975478400 [SCTP MODE] ERROR: (sctp bind)   Maximum bind() attempts. Die now...
      

      如果日志中出现上面这种报错信息,则说明该数据节点的SCTP端口已经被占用,该实例无法正常启动。

  • 通过sysctl -a查看net.ipv4.ip_local_port_range,如果该实例配置的端口在系统随机占用端口号的范围内,则可以修改系统随机占用端口号的范围,确保xml文件中所有实例端口号均不在这个范围内。检查某个端口是否被占用的命令如下。

    netstat -anop | grep 端口号
    

    示例如下。

    [root@openGauss36 ~]# netstat -anop | grep 15970
    tcp        0      0 127.0.0.1:15970         0.0.0.0:*               LISTEN      3920251/gaussdb      off (0.00/0/0)
    tcp6       0      0 ::1:15970               :::*                    LISTEN      3920251/gaussdb      off (0.00/0/0)
    unix  2      [ ACC ]     STREAM     LISTENING     197399441 3920251/gaussdb      /tmp/.s.PGSQL.15970
    unix  3      [ ]         STREAM     CONNECTED     197461142 3920251/gaussdb      /tmp/.s.PGSQL.15970
    
  • 确认是否是由于开启了系统防火墙导致数据库启动失败。

  • 确认是否由于互信关系出现异常,导致数据库无法启动。重新配置实例中各台机器的互信关系解决此问题。

  • 确认是否由于数据库控制文件如gaussdb.state损坏或文件被清空,导致数据库无法启动。若主机控制文件损坏,可触发备机failover,然后通过重建恢复原主机;若备机控制文件损坏,可直接通过重建方式恢复备机。

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

openGauss学习笔记-190 openGauss 数据库运维-常见故障定位案例-服务启动失败,openGauss学习笔记,openGauss,国产数据库,开源数据库,数据库,RDBMS文章来源地址https://www.toymoban.com/news/detail-816926.html

到了这里,关于openGauss学习笔记-190 openGauss 数据库运维-常见故障定位案例-服务启动失败的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • openGauss学习笔记-205 openGauss 数据库运维-常见故障定位案例-业务运行时整数转换错

    205.1 业务运行时整数转换错 205.1.1 问题现象 在转换整数时报错如下。 205.1.2 原因分析 部分数据类型不能转换成目标数据类型。 205.1.3 处理办法 逐步缩小SQL范围确定不能转换的数据类型。 👍 点赞,你的认可是我创作的动力! ⭐️ 收藏,你的青睐是我努力的方向! ✏️ 评论

    2024年01月24日
    浏览(34)
  • openGauss学习笔记-196 openGauss 数据库运维-常见故障定位案例-强制结束指定的问题会话

    196.1 强制结束指定的问题会话 196.1.1 问题现象 有些情况下,为了使系统继续提供服务,管理员需要强制结束有问题的会话。 196.1.2 处理办法 以操作系统用户omm登录主机。 使用如下命令连接数据库。 postgres为需要连接的数据库名称,8000为端口号。 从当前活动会话视图查找问

    2024年01月18日
    浏览(39)
  • openGauss学习笔记-199 openGauss 数据库运维-常见故障定位案例-Lock wait timeout

    199.1 执行 SQL 语句时,提示 Lock wait timeout 199.1.1 问题现象 执行SQL语句时,提示“Lock wait timeout”。 199.1.2 原因分析 数据库中存在锁等待超时现象。 199.1.3 处理办法 数据库在识别此类错误后,会自动进行重跑,重跑次数可以使用max_query_retry_times控制。 需要分析锁超时的原因,

    2024年01月16日
    浏览(40)
  • openGauss学习笔记-201 openGauss 数据库运维-常见故障定位案例-执行修改表分区操作时报错

    201.1 执行修改表分区操作时报错 201.1.1 问题现象 执行ALTER TABLE PARTITION时,报错如下。 201.1.2 原因分析 在同一条ALTER TABLE PARTITION语句中,既存在DROP PARTITION又存在ADD PARTITION时,无论它们在语句中的顺序是什么,openGauss总会先执行DROP PARTITION再执行ADD PARTITION。执行完DROP PARTITIO

    2024年01月19日
    浏览(38)
  • openGauss学习笔记-198 openGauss 数据库运维-常见故障定位案例-分析查询效率异常降低的问题

    198.1 分析查询效率异常降低的问题 198.1.1 问题现象 通常在几十毫秒内完成的查询,有时会突然需要几秒的时间完成;而通常需要几秒完成的查询,有时需要半小时才能完成。 198.1.2 处理办法 通过下列的操作步骤,分析查询效率异常降低的原因。 使用analyze命令分析数据库。

    2024年01月16日
    浏览(49)
  • openGauss学习笔记-184 openGauss 数据库运维-升级-升级验证

    本章介绍升级完成后的验证操作。给出验证的用例和详细操作步骤。 184.1 验证项目的检查表 表 1 验证项目的检查表 序号 验证项目 检查标准 检查结果 1 版本查询 查询升级后版本是否正确 - 2 健康检查 使用gs_checkos工具完成操作系统状态检查。 - 3 数据库状态 使用gs_om工具完成

    2024年02月03日
    浏览(36)
  • openGauss学习笔记-61 openGauss 数据库管理-常见主备部署方案

    61.1 单中心 图 1 单中心部署图 组网特点: 单AZ部署,可以配置一个同步备一个异步备 优势: 三个node完全等价,故障任意一个node都可以提供服务; 成本低。 劣势: 高可用能力较低,发生AZ级故障只能依赖节点恢复; 适用性: 适用于对高可用性要求较低的业务系统。 61.2 同

    2024年02月09日
    浏览(34)
  • openGauss学习笔记-149 openGauss 数据库运维-备份与恢复-逻辑备份与恢复之gs_restore

    149.1 背景信息 gs_restore是openGauss提供的针对gs_dump导出数据的导入工具。通过此工具可由gs_dump生成的导出文件进行导入。 gs_restore工具由操作系统用户omm执行。 主要功能包含: 导入到数据库 如果连接参数中指定了数据库,则数据将被导入到指定的数据库中。其中,并行导入必

    2024年02月04日
    浏览(39)
  • openGauss学习笔记-09 openGauss 简单数据管理-创建数据库

    数据库安装完成后,默认生成名称为postgres的数据库。您需要自己创建一个新的数据库。 9.1 语法格式 创建数据库 查看数据库 使用“l”用于查看已经存在的数据库。 使用 “c + 数据库名” 进入已存在数据库。 修改数据库 删除数据库 9.2 参数说明 database_name 要创建、修改或

    2024年02月16日
    浏览(45)
  • openGauss学习笔记-60 openGauss 数据库管理-逻辑存储结构

    openGauss的数据库节点负责存储数据,其存储介质也是磁盘,本节主要从逻辑视角介绍数据库节点都有哪些对象,以及这些对象之间的关系。数据库逻辑结构如 图1 。 图 1 数据库逻辑结构图 说明: Tablespace,即表空间,是一个目录,可以存在多个,里面存储的是它所包含的数据

    2024年02月09日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包