openGauss常见问题与故障处理(二)

2.网络故障定位手段
2.1 网络故障定位手段--常见网络故障引发的异常
在数据库正常工作的情况下,网络层对上层用户是透明的,但数据库在长期运行时,可能会由于各种原因导致出现网络异常或错误。
常见的因网络故障引发的异常有:
1> 数据库启动失败,报网络错误
2> 状态异常,如:节点上所有的实例都是unknown或者所有主机都切换为备机
3> 网络连接建立失败
4> 对数据库执行SQL操作时,报网络异常中断的错误
5> 连接数据库或执行查询时发生进程停止响应。数据库出现了网络故障后,主要通过使用Linux系统提供的网络相关命令工具
(ping、ifconfig、netstat、lsof等),进程堆栈查看工具(gdb、gstack),结合数据库的日志信息,进行分析定位。
本节通过举例介绍常见的网络问题,并进行基本的分析定位。

2.2 网络故障定位手段--数据库启动失败,报网络错误
问题现象1:
日志中存在如下错误信息,可能是端口被其他进程侦听
LOG:cloud not bind socket at the 10 time,is another postmaster already running on port 26000?

处理方法:
执行如下命令查看侦听该端口的进程,端口号请根据实际端口号替换
Gaiem# netstat -anop | grep 14880
根据查询结果,强行停止正在占用端口的进程或者更改数据库侦听端口

问题现象2:
使用gs_om -t status --detail查询状态,如果显示主备间连接未建立。

处理方法:
在openEuler操作系统下,使用systemctl status firewalld.service命令,查看节点上是否开启了防火墙。
如果开启,使用systemctl stop firewalld.service关闭防火墙
# systemctl status firewalld.service
操作系统不同,命令可能不同,使用对应操作系统命令查看修改

2.3 网络故障定位手段--数据库状态异常
问题现象:
某一节点上出现所有实例都是unknown或者所有主实例都切换成了备实例或者查询中出现大量connection reset by peer,connection timed out等报错信息。

所有实例都是unknown这种状态,大家可能平时很少遇到过,所以对这种状态的理解,咱们可以举一个模拟场景中的肖荏盖的反向的例子来帮助大家理解。

对于初学者入门的学习,一些理论不容易理解或记住,所以本节课程【创新】采用了【正、反对比联想记忆】的方法,
引入模拟场景中的肖荏盖的小故事。(模拟场景为虚构演绎,仅供教学,不要对号入座,懂不懂?明白吗?)

【数据库的功能都是正向的,模拟场景中的肖荏盖做的事情都是反向的。】

模拟场景:肖荏盖接到一个电话,让他们去某个公司帮忙解决问题,其实这个问题就是比较高级的问题了,鱿鱼肖荏盖一直是中级工程师,而且喜欢自吹自擂,名不副实,所以到了现场解决不了那个问题。
他就打电话问遍了芸芬愁砚所有的工程师,结果是全都回答:不会。
肖荏盖只能偷偷摸摸求助某上市公司超级大师蓝阔福的徒弟,康副业来解决问题。
在模拟场景中,肖荏盖的行业里有这么一个传言,就是芸芬愁砚的每一个人都是酒囊饭袋,其实这种说法是错误的、是不负责任的、是不准确的。
准确的说法是:芸芬愁砚只有肖荏盖一个人是纯酒囊,芸芬愁砚的其他人每一个人酒量都不是很好,都是纯饭袋,只有他们组合起来,形成合力,才是真正的酒囊饭袋。
所以,平时学知识的时候,也不能因为人云就亦云,要有自己的分析和见解,模拟场景中,超级大师蓝阔福正是坚定自己的信念,坚守正道,不断学习,才取得真正的成功,带领他的公司成为上市公司。
反观肖荏盖,天天就像丘处机一样,到处说自己从业多少多少年,每次开饭之前先说一遍,从业多少年(大家不要误会,这可不是什么祷告词),肖荏盖喝完了酒还是这一套,从业了多少年,实际技术功力完全就是没有任何提升,
肖荏盖从业几十年,唯一提升最明显的,那就是酒量了。
肖荏盖经常在喝醉了就各种承诺技术兜底,其实他们全体中级工程师根本不具备兜底的能力,全指望某上市公司超级大师蓝阔福的徒弟,康副业。
由此可见,超级大师蓝阔福的徒弟们,还都是很厉害的,毕竟随便请出来一位徒弟,接一接私活,都能挽救一个濒临倒闭的公司呢。当然,也不是白挽救,肖荏盖也不是白求人家徒弟的,这也很正常的。
所以,提醒大家,打铁还需自身硬,要向模拟场景中的超级大师蓝阔福学习,不要向模拟场景中的肖荏盖全家学习。

读完模拟场景,我们还是要回到现实,重新来看问题现象:
某一节点上出现所有实例都是unknown或者所有主实例都切换成了备实例或者查询中出现大量connection reset by peer,connection timed out等报错信息。

处理办法:
1> 如果ssh不能连接故障机器,在其他机器上使用ping命令向该机器发数据包。如果可以ping通,说明可能是该资源(内存、CPU、磁盘)耗尽导致不能建立连接。
2> 如果ssh可以连接该机器,尝试执行查询,并每隔1s执行/sbin/ifconfig eth?(?代表数字,表示第几个网卡)命令,
查看如下信息中的dropped及errors值的变化情况,如果增长迅速,可能是网卡或网卡驱动故障。
ifconfig enp42zdrsggq

2.4 网络故障定位手段--网络连接建立失败
问题现象1:节点连接其他节点失败,日志中报出“connection refused”错误
处理办法:
1> 查看端口是否配置错误,导致连接时使用的端口并非对方侦听的端口。查看报错节点配置文件postgresql.conf记录端口号与对方侦听的端口号是否一致。
2> 查看对方端口侦听是否正常(可以使用“netstat -anp”命令)或者查看对方进程是否存在。

问题现象2:对数据库执行SQL操作时,获取连接描述符失败,报错如下:
WARNING:29483313:incomplete message from client:4905,9
WARNING:29483313:failed to receive connDefs at the time:1.
ERROR:29483313:failed to get pooled connections

在日志中,找到上面的错误,并向上查看一段日志内容,可以看到详细的错误信息,常见的错误如下所示,
主要是由于主备信息不正确导致。
FATAL:dn_6001_6002:can not accept connection in pending mode.
FATAL:dn_6001_6002:the database system is starting up.
FATAL:dn_6009_6010:can not accept connection in stanby mode.

处理办法
使用gs_om -t status --detail查询状态,确认是否发生过主备切换,重置实例状态。
此外,需要查看连接失败的节点是否发生了core或者重启。通过om日志可以查看到是否发生了重启。

2.5 网络故障定位手段--执行SQL报网络异常中断错误
问题现象1:查询执行失败,报错信息如下。
ERROR:dn_6065_6066:Failed to read response from Datanodes.Detail:Connection reset by peer.Local:dn_6065_6066
Remote:dn_6023_6024
ERROR:Failed to read response from Datanodes Detail:Remote close socket unexpectedly
ERROR:dn_6155_6156:dn_6151_6152:Failed to read vector response from Datanodes

连接建立失败,报错信息如下:
ERROR:Distribute Query unable to connect xxx.xxx.xxx.xxx:14600 [Detail:stream connect connect() fail:Connection timed out]
ERROR:Distribute Query unable to connect xxx.xxx.xxx.xxx:12600 [Detail:receive accept response fail:Connection timed out]

处理办法:
使用gs_check检查网络配置是否符合标准
查看是否有进程发生core或重启,以及主备切换
如果不存在上述问题,可以联系网络技术人员做具体分析。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/13735.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

LabVIEW大数据处理

在物联网、工业4.0和科学实验中,大数据处理需求逐年上升。LabVIEW作为一款图形化编程语言,凭借其强大的数据采集和分析能力,广泛应用于实时数据处理和控制系统中。然而,在面对大数据处理时,LabVIEW也存在一些注意事项。…

OLED 显示画面的变换操作——上下、左右翻转

OLED 画面旋转 OLED 写入函数定义 OLED_WR_Byte(0xA1,OLED_CMD);//--Set SEG/Column Mapping 0xa0左右反置 0xa1正常 OLED_WR_Byte(0xC8,OLED_CMD);//Set COM/Row Scan Direction 0xc0上下反置 0xc8正常OLED 显示界面转换函数如下 void OLED_DisplayTurn(u8 i) {if(i0…

关于 JavaScript 对象不变性,你了解吗?

1. 基本概念 在 JavaScript 语言中,不变性(Immutability)是一个重要的概念。它指的是对象一旦创建后其状态就不能改变。在函数式编程中,不变性是实现纯函数的基础,因为它可以确保函数的输出只依赖于输入参数&#xff…

AOA-LSTM多输入时序预测|算术优化算法-长短期神经网络|Matlab

目录 一、程序及算法内容介绍: 基本内容: 亮点与优势: 二、实际运行效果: 三、方法原理介绍: 四、完整程序数据下载: 一、程序及算法内容介绍: 基本内容: 本代码基于Matlab平…

【金猿案例展】上海汽检——智能网联自动驾驶交通事故原因分析服务平台

‍ 零数科技案例 本次项目案例由零数科技投递并参与“数据猿年度金猿策划活动——2024大数据产业年度创新服务企业榜单/奖项”评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 智能网联汽车作为未来交通出行的重要载体,其自动驾驶功能的快速发展为车辆的安全…

基于51单片机的电风扇控制系统proteus仿真

地址:https://pan.baidu.com/s/11xIpPrV8Xl5Wymk_gxPxPA 提取码:1234 仿真图: 芯片/模块的特点: AT89C52/AT89C51简介: AT89C52/AT89C51是一款经典的8位单片机,是意法半导体(STMicroelectron…

DAY110代码审计-PHP框架开发篇ThinkPHP版本缺陷不安全写法路由访问利用链

https://blog.csdn.net/m0_60571842/article/details/139057898 看这个原作者 知识点: 1、PHP框架学习-ThinkPHP-架构&调试&路由&接受2、PHP框架审计-ThinkPHP-不安全写法&版本漏洞 框架审计总结方向: 1、版本不安全写法怎么检测 -本…

网络安全技术在能源领域的应用

摘要 随着信息技术的飞速发展,能源领域逐渐实现了数字化、网络化和智能化。然而,这也使得能源系统面临着前所未有的网络安全威胁。本文从技术的角度出发,探讨了网络安全技术在能源领域的应用,分析了能源现状面临的网络安全威胁&a…

Ubuntu上nginx常用命令

错误截图 启用nginx systemctl start nginx 停止 systemctl stop nginx 重启 systemctl restart nginx 检查nginx配置文件是否正确 nginx -t -c /etc/nginx/nginx.conf 修改配置文件后,重新加载配置文件命令 nginx -s reload 查看nginx服务状态&#xff0c…

Shell编程之正则表达式与文本处理器

Shell编程之正则表达式与文本处理器 文章目录 Shell编程之正则表达式与文本处理器正则表达式正则表达式概述正则表达式的定义 基础正则表达式grep创建测试文件查找特定字符**查找行首与行位****查找任意字符和重复字符****查找连续字符范围**扩展正则表达式 扩展正则表达式文本…

机器情绪及抑郁症识别算法

🏡作者主页:点击! 🤖编程探索专栏:点击! ⏰️创作时间:2024年11月12日11点25分 点击开启你的论文编程之旅https://www.aspiringcode.com/content?id17231829233829 情感识别:多…

基于Java Springboot在线教育学习系统

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 数据…

Spring Boot编程训练系统:开发流程与技巧

4系统概要设计 4.1概述 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示: 图4-1系统工作原理…

【SSL-RL】自监督强化学习:自预测表征 (SPR)算法

📢本篇文章是博主强化学习(RL)领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对相关等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅…

Station Editor更新和版本回退

一、更新 第一步点击import 第二步 第三步 第四步 第五步 第六步 第七步 第八步 第九步 第十步 第十一步 第十二步 第十三步 、 第十四步 第十五步 第十六步 点击完update才能继续下一步 第十七步 第十八步,结束出来刷新一下就可以了

如何利用亚马逊自养号测评,实现店铺稳定出单的策略

企业的发展通常会经历一系列阶段,从起步、立足市场,到迅速扩张、达到顶峰,再到可能的市场适应或转型期,亚马逊平台上的店铺发展路径亦是如此。为了确保店铺能够长期立足于市场,关键在于有效利用其快速成长期和成熟期&a…

【Linux】基础IO及文件描述符相关内容详细梳理

0. C语言文件I/O 在C语言中,我们学习了相关函数来读写文件,例如:fopen,fwrite,fread,fprintf等, 在C语言中文件的打开方式: r Open text file for reading. …

DIY了一台无人机,用全志T113芯片

‌无人机飞控是无人机的核心部分,一般包括传感器、机载计算机和伺服作动设备三大部分,能否在对重量和体积有严苛要求的无人机结构上部署具有稳定功能的飞控,是影响无人机飞行表现的重要因素。 基于此,作者就基于全志T113-S3设计了…

vue+springboot天气预测大数据2+1架构|必须带有管理端和数据库爬虫等|机器学习预测使用

文末有CSDN官方提供的麦麦的联系微信! 文末有CSDN官方提供的麦麦的联系微信! 🩷编号:R04 🩷架构:21架构,大屏端管理端后端,vuespringbotmysql 🩵全新开发,代码完整&#…

Tofu AI视频处理模块视频输入配置方法

应用Tofu产品对网络视频进行获取做视频处理时,首先需要配置Tofu产品的硬件连接关系与设备IP地址、视频拉流地址。 步骤1 Tofu设备点对点直连或者通过交换机连接到电脑,电脑IP配置到与Tofu默认IP地址同一个网段。 打开软件 点击右上角系统设置 单击左侧…