GreatSQL通过错误日志信息判断数据库实例是如何关闭的

mysql知识点 ,它定义了 MySQL 服务的启动、运行、管理和关闭方式。以下是每个部分的详细解释和原理说明: Description:描述该服务的名称,方便管理员识别其用途。这里是“”。 After=network.target:表明 MySQL 服务应在 (即网络相关服务启动完成)之后启动,以确保 MySQL 能够依赖网络连接(如果配置了远程访问)。这不意味着网络一定启动成功,只是依赖其顺序。 [Install] WantedBy=multi-user.target:指定服务的安装目标,将服务链接到 。该选项决 阅读详情

背景概述

在一次客户的数据库实例连接不上了,需要我们排查一下原因,通过查看数据库实例进程已经不存在了,在错误日志中没有发现其他报错信息,发现有shutdown的字样出现,怀疑是某个用户手动关闭了实例。我们通过以下测试,发现是由于用户关闭了主机所导致的。

问题复现

本次测试基于GreatSQL 8.0.32-24,通过以下测试了解不同情况下关闭数据库实例后错误日志会记录哪些信息,之后可以通过错误日志中的信息了解到数据库实例是如何被关闭的。

1.正常关闭shutdown

mysql> shutdown;

查看错误日志

2023-04-24T18:41:16.491010+08:00 504 [System] [MY-013172] [Server] Received SHUTDOWN from user root. Shutting down mysqld (Version: 8.0.32-24).
2023-04-24T18:41:28.657637+08:00 0 [System] [MY-010910] [Server] /greatsql/svr/mysql/bin/mysqld: Shutdown complete (mysqld 8.0.32-24)  MySQL Community Server - GPL.

可以看到正常关闭实例时,会显示是由哪个数据库用户执行的shutdown命令:SHUTDOWN from user root

2.kill关闭

通过kill命令关闭实例

shell> ps -ef | grep mysqld
shell> kill 22803 17012

查看错误日志

2023-04-24T18:42:30.910121+08:00 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.0.32-24).
2023-04-24T18:42:32.201306+08:00 0 [System] [MY-010910] [Server] /greatsql/svr/mysql/bin/mysqld: Shutdown complete (mysqld 8.0.32-24)  MySQL Community Server - GPL.

可以看到通过kill命令关闭实例会显示 SHUTDOWN from user <via user signal>,不会显示具体执行kill 的操作系统用户

3.kill -9 关闭

通过kill -9关闭数据库实例

shell> ps -ef | grep mysqld
shell> kill -9 11803 18712

查看错误日志

# 错误日志中不会显示任何信息

如果数据库实例进程不存在,并且错误日志信息中没有明显的数据库实例关闭的信息,可考虑数据库实例是通过 kill -9 关闭的

4.主机reboot/shutdown

通过正常关闭主机,从而导致数据库实例关闭

shell> reboot

查看错误日志

2023-04-24T18:46:51.021426+08:00 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.0.32-24).
2023-04-24T18:46:53.774795+08:00 0 [System] [MY-010910] [Server] /greatsql/svr/mysql/bin/mysqld: Shutdown complete (mysqld 8.0.32-24)  MySQL Community Server - GPL.

可以看到通过正常关闭主机导致数据库实例关闭会显示 SHUTDOWN from user <via user signal>,不会显示具体执行关闭主机的的操作系统用户

5.主机异常断电

通过模拟主机异常断电,从而导致数据库实例关闭

# 对主机做断电操作

查看错误日志

# 错误日志中不会显示任何信息

如果数据库实例进程不存在,并且错误日志信息中没有明显的数据库实例关闭的信息,可考虑数据库实例是由于主机异常断电关闭的。

总结

1.正常关闭数据库实例时,错误日志中会记录是由那个数据库用户关闭的,如 SHUTDOWN from user root

2.通过 kill 命令关闭数据库实例以及关闭主机(reboot/shutdown)导致数据库实例关闭,错误日志中会记录 SHUTDOWN from user <via user signal>,可通过history命令查看是否执行过 kill 操作或关闭主机的操作

3.通过kill -9 命令关闭数据库实例以及主机异常断电导致数据库实例关闭,错误日志中不会记录导致数据库实例关闭的信息,可通过history命令查看是否执行过 kill -9 操作

Enjoy GreatSQL :)

关于 GreatSQL

GreatSQL是由万里数据库维护的MySQL分支,专注于提升MGR可靠性及性能,支持InnoDB并行查询特性,是适用于金融级应用的MySQL分支版本。

相关链接: GreatSQL社区 Gitee GitHub Bilibili

GreatSQL社区:

image

社区有奖建议反馈: https://greatsql.cn/thread-54-1-1.html

社区博客有奖征稿详情: https://greatsql.cn/thread-100-1-1.html

社区2022年度勋章获奖名单: https://greatsql.cn/thread-184-1-1.html

(对文章有疑问或者有独到见解都可以去社区官网提出或分享哦~)

技术交流群:

微信&QQ群:

QQ群:533341697

微信群:添加GreatSQL社区助手(微信号:wanlidbc )好友,待社区助手拉您进群。

DataEase 使用外接数据库版本为8.0.27,解决修改 lower_case_table_names=1 不生效问题,实测有效 这篇文章,是在安装开源数据可视化工具 DataEase 时,使用了外接数据库,且数据库版本为8.0.27版本,解决修改lower_case_table_names=1 时,不生效的问题 阅读详情

相关推荐

立创开源:基于STM32F103与ADS1256的六维力传感器低成本实现方案

本文详细介绍了一种基于STM32F103微控制器与ADS1256高精度ADC的低成本六维力传感器实现方案。该方案通过3D打印的六梁弹性体结构结合应变片,将多维力信号转换为电信号,并由24位ADC进行高精度采集。文章涵盖了硬件选型、电路设计、嵌入式软件驱动及上位机数据可视化全流程,为机器人、精密测量等领域的爱好者提供了一个可复现的开源实践参考。

weixin_34718952的博客 390

[linux学习] 实战系列之日志分析

[linux学习] 实战系列之日志分析 之前有系统的学习过shell命令,但是过会儿就忘得一干二净,只记得cd、ls这些常用命令,果然这些东西还是要带着目的的去用才会熟悉,所以就有了这个实战系列,主要是根据不同的场景来带着目的的去用一下我们常用的命令。 分析什么日志 分析日志分析日志,首先我们得找一段日志吧,日志内容无所谓,千篇一律嘛,我这里在服务器上找了我mysql的错误日志来分析。 error.log: 2021-03-27T14:45:57.543470Z 1 [System] [MY-013576]

lzr_ps的博客 1039

文献阅读:SAR像素偏移的性能改进An Improvement of the Performance of SAR Offset Tracking Approach

像素偏移追踪POT文献阅读

weixin_56301271的博客 342

mysql多实例

mysql配置多实例

weixin_54560050的博客 1101

如何利用air780e与stm32c8c6进行通信实现给手机发送一条英文短信的功能?

🏆 本文收录于《全栈Bug调优(实战版)》专栏,致力于分享我在项目实战过程中遇到的各类Bug及其原因,并提供切实有效的解决方案。无论你是初学者还是经验丰富的开发者,本文将为你指引出一条更高效的Bug修复之路,助你早日登顶,迈向财富自由的梦想🚀!同时,欢迎大家关注、收藏、订阅本专栏,更多精彩内容正在持续更新中。让我们一起进步,Up!Up!Up!    备注: 部分问题/难题源自互联网,经过精心筛选和整理,结合数位十多年大厂实战经验资深大佬经验总结所得,数条可行方案供所需之人参考。

**My Coding Family** 1237

31、工程中不确定性量化与优化的全面解析

本文全面解析了工程中不确定性量化与优化的关键方法。针对数据充足与不足两种情况,分别介绍了概率理论和非概率方法在不确定性建模中的应用;系统阐述了采样方法、FORM/SORM、泰勒级数近似等不确定性传播技术;深入比较了RBDO与RDO两种主流优化框架的原理、步骤及适用场景,并通过两杆桁架案例展示了具体实现过程。文章旨在为工程师提供一套完整的从不确定性分析到优化设计的方法论,提升工程系统的可靠性与稳健性。

php55的博客 121

Linux系统中MySQL Server因only_full_group_by导致自动升级失败,引发上游系统接口失效的问题

此步骤包括所有其他升级任务。事情是这样的,早上大概九点钟的时候,被告知系统登录验证码接口失效,我当时就想到可能是数据库出了问题。,立马知道怎么搞了,之前一直拖着没修改这个配置,果不其然还是出了问题。在前边提到为了不影响客户的使用,我临时以。模式启动了一个实例,所以我直接在。删除掉,把剩下组合在一起的写到。最后以普通模式启动(不加。,数据库就会更新成功。

得未曾有 心净踊跃 2221

如何使用 Claude Code 搜索 SAP note

当然,Claude Code 自己仍然要有一种合法可用的模型访问方式,例如 Claude 订阅、Anthropic API 或公司配置的模型提供方式,这和 Browser Extension 是两个问题。因为 Claude Code 已经是完整的 MCP Host,而 Microsoft Playwright MCP 又已经明确支持现有 Chrome Session,两者拼起来在技术架构上完全成立。Microsoft Playwright MCP 默认可以创建持久化浏览器 Profile。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 65

技术干货 | 数据库实例无法连接?GreatSQL帮你快速找到答案!

2.通过 kill 命令关闭数据库实例以及关闭主机(reboot/shutdown)导致数据库实例关闭,错误日志中会记录 SHUTDOWN from user,可通过history命令查看是否执行过 kill 操作或关闭主机的操作;3.通过kill -9 命令关闭数据库实例以及主机异常断电导致数据库实例关闭,错误日志中不会记录导致数据库实例关闭的信息,可通过history命令查看是否执行过 kill -9 操作。通过模拟主机异常断电,从而导致数据库实例关闭。通过正常关闭主机,从而导致数据库实例关闭。

GreatDB的博客 784

YOLO26改进105:全网首发--使用BiFPN改进特征金字塔网络

YOLOv6 v3.0在目标检测领域实现重大突破,通过改进网络架构和训练方案显著提升性能。该版本在COCO数据集上展现出优越表现:YOLOv6-N达到37.5% AP/1187 FPS,YOLOv6-S实现45.0% AP/484 FPS,均超越同类检测器。大模型YOLOv6-M/L分别达到50.0%/52.8% AP,L6版本更创下实时检测新纪录。关键技术包括RepVGGBlock、BiFusion等新型模块,通过多分支融合和高效重参数化设计提升性能。研究团队已验证各改进模块有效性,代码已开源。

AIcurator的博客 95

【零基础入门unity游戏开发——unity通用篇12】导入导出unity资源包、设置编程工具、创建脚本(组件)规则、MonoBehaviour基类介绍、脚本模板(基于unity6开发介绍)

导入导出unity资源包、设置编程工具、创建脚本(组件)规则、MonoBehaviour基类介绍、脚本模板(基于unity6开发介绍)

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 760

GreatSQL社区2023全年技术文章总结

GreatSQL社区自成立以来一直致力于为广大的数据库爱好者提供一个交流与学习的平台。在2023年,我们见证了社区的蓬勃发展,见证了众多技术文章的诞生与分享。此篇总结呈现GreatSQL社区2023年社区技术文章在优快云发布的全部。这些文章涵盖了GreatSQL、MGR、源码解析、故障解析、SQL优化、安装部署、等众多数据库技术文章。

GreatSQL2021的博客 1223

Autosar PWM模块的配置和使用

在上面的代码中,我们首先配置了PWM的初始化参数,包括频率和分辨率。GPIO Driver:由于PWM信号需要输出到特定的引脚上,因此我们还需要使用GPIO驱动程序来控制引脚的状态。通过合理配置和应用PWM模块,我们可以实现对汽车电子系统中各种功能的精确控制,从而提高汽车性能和用户体验。在实际应用中,我们可以根据需要进行更多的配置和调整,以实现灵活的PWM控制。PWM Driver:这是主要的PWM驱动程序,负责产生PWM信号并输出到相应的引脚上。接下来,我们需要配置PWM模块的参数。

TcData的博客 682

在 macOS Big Sur 上安装 MySQL 8.x Compressed TAR Archive

因个人能力有限,文章难免存在错误,望斧正,感谢。 版本: macOS 11.3 Intel版本 MySQL 8.0.24 Compressed TAR Archive 一、准备所需文件 前往MySQL :: Download MySQL Community Server选择macOS系统的Compressed TAR Archive版本下载,目前最新版本是8.0.24。下载后为~/Downloads/mysql-8.0.24-macos11-x86_64.tar.gz。将其解压至/usr/l...

耕耘——从菜鸟到高手的蜕变 1383

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Docker 搭建 mysql8 遇到的问题

docker安装mysql8

嘻哈记的运维学习之路 4542

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Docker MySQL Shutting down mysqld

6)查看日志,在日志发现,有人操作shutdown,初步判断是受到了攻击,一是在防火墙上对外端口使用不常用的端口,二是对数据库密码复杂度及权限进行了各种设置。6月初至6月15日发现MySQL无故停机多次,导致系统无法使用。二、排查被系统杀掉进程的原因,可能就是人为关闭MySQL,该功能系统使用人数不是很高。查询Linux系统日志,在宿主机/var/log/messages进行查看,并未查到memory关键字。一、根据Docker的日志初步估计是数据库内存飙升,从而被系统杀掉进程。

lvhui321的博客 1106

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

野路子mysqld_safe玩法搞死mysqld进程

*GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。写在前面老叶提醒:因为systemd用了进程组或者session,所以会导致本文中出现的问题:用systemd拉起mysqld_safe进程,而mysqld_safe进程再拉起mysqld进程;当把mysqld_safe进程kill后,systemd会把mysqld进程也给kill了。正规的玩法是:用systemd直接...

老叶茶馆 431

MySQL 8.0.12 参数log_timestamps 导致日志信息时间错差8小时

运行环境:MySQL 8.0.12 + CentOS 7.5 背景: 错误日志和慢查询日志中的时间戳信息比正常的时间少了8个小时。 知识点: log_timestamps 自5.7.2版本被引入,此参数控制了general log、error log、slow query log日志中 时间戳的显示,默认使用的UTC。但是此参数不影响mysql.general_log, mysql.slow_...

vkingnew 的技术博客 4322

终端查看某个程序的路径

ps -ef|grep 程序名称 例如:查询mysql的安装路径 ps -ef|grep mysql zhangmeng@zhangmengdeMacBook-Pro ~ % ps -ef|grep mysql 74 5434 1 0 4:36下午 ?? 0:29.75 /usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/dat

qq_43215246的博客 1047

1.1 mysql8.0源码安装 for mac

前言 一般我们要去熟悉源码,就先要看看怎么让源码运行起来,mysql的源码如果需要运行起来存在一些难度,因此我们来尝试下如何将我们之前下载到的源码运行起来。 下载源码 git clone https://github.com/mysql/mysql-server.git 运行环境 我使用的是macOS 10.15,需要按照cmake编译器。利用homebrew进行资源安装。 brew install cmake 依赖库 下载boost_1_72_0.tar.gz 编译源码 ##mysql目录 cd my

944

MySQL 线程一直处理 killed 状态

1.版本 1)操作系统 cat /proc/version Linux version 3.10.0-1127.18.2.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) ) #1 SMP Sun Jul 26 15:27:06 UTC 2020 2)mysql数据库版本 mysql> select version(); +----------

渔夫数据库笔记 6620
上一篇: 自打有了GIPKs,DBA和开发再也不用battle了
下一篇: MGR 主备集群实现异步连接故障转移
GreatSQL社区
博客等级 码龄5年 1210粉丝 390原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值