记一次帮网友解决非法 KILL MySQL服务引起的故障

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDSClaw,2核4GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介:

深圳—游子 9:55:26


老乡 请教你个事

深圳—游子 9:55:29


mysql.sock 丢失,mysql启不来,请问大家是怎么解决的?

Bell 10:04:41


这个文件不是动态生成的么

Bell 10:04:53


删除了,启动服务时会自动产生的

深圳—游子 10:12:02


现在启动不了

深圳—游子 10:12:15


试了各种方法启不来


一网友找我,说是使用MySQL提示如下错误:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

首先想的是看下服务正常不:

netstat -tunlp|grep 3306

说是没有服务进程

说你启动服务看看

/etc/init.d/mysql start 

提示如下:

Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid)

  按照以往的正常思路是,首先看看/var/lib/mysql目录的属主属组,权限,查看一切正常。又看了下磁盘空间,innode也完全正常。

Bell 10:17:54


在这故障之前你做了什么都

深圳—游子 10:18:16


做了权限设置

Bell 10:18:27


具体的发过来我看下


Bell 10:18:35

做完后重启了吗

深圳—游子 10:20:55
delete from mysql.user where password='';   
update user set Host='IP' where user='root' and Host='%';  select User,Host,Password from mysql.user;  service mysql restart
Bell 10:21:53
做了权限设置后,不用重启服务吧

这时就想到肯定是KILL MySQL服务了,于是要来了日志,如下:


2016-12-01 15:13:01 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp
 server option (see documentation for more details).
2016-12-01 15:13:01 0 [Note] /usr/sbin/mysqld (mysqld 5.6.28) starting as process 19651 ...
2016-12-01 15:13:01 19651 [Note] InnoDB: Using atomics to ref count buffer pool pages
2016-12-01 15:13:01 19651 [Note] InnoDB: The InnoDB memory heap is disabled
2016-12-01 15:13:01 19651 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2016-12-01 15:13:01 19651 [Note] InnoDB: Memory barrier is not used
2016-12-01 15:13:01 19651 [Note] InnoDB: Compressed tables use zlib 1.2.3
2016-12-01 15:13:01 19651 [Note] InnoDB: Using Linux native AIO
2016-12-01 15:13:01 19651 [Note] InnoDB: Not using CPU crc32 instructions
2016-12-01 15:13:01 19651 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2016-12-01 15:13:01 19651 [Note] InnoDB: Completed initialization of buffer pool
2016-12-01 15:13:01 19651 [Note] InnoDB: Highest supported file format is Barracuda.
2016-12-01 15:13:01 19651 [Note] InnoDB: 128 rollback segment(s) are active.
2016-12-01 15:13:01 19651 [Note] InnoDB: Waiting for purge to start
2016-12-01 15:13:02 19651 [Note] InnoDB: 5.6.28 started; log sequence number 180311887
2016-12-01 15:13:02 19651 [ERROR] /usr/sbin/mysqld: unknown variable 'sql_modcheduler=ONi_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
'
2016-12-01 15:13:02 19651 [ERROR] Aborting

  看完日志,再次沟通得知,果然是KILL MySQL服务了,而且不至一次。并且所有的数据库服务器都这样操作过,冒冷汗啊!!!我说还做什么了,他说还改了配置文件,加了一条EVENT ,没管它,索性做了如下操作:

mv my.cnf  my.cnf.ori
/etc/init.d/mysql start

哈哈,久违的启动成功提示出来了终于。之后让他登录上去看下数据对不对,看了下没有问题。

总结:

  最后经过和他的沟通,同样的环境,同样的数据库版本,同样的配置,只有这一台启动不起来。经过分析判断得出,此次故障的原因为:kill MySQL服务进程,非法关闭服务导致本次故障。根据老司机经验,随便kill数据库服务进程,特别是kill -9,是会导致各种各样的数据库故障的!大家引以为戒吧!!!



linuxzkq 51CTO博客,原文链接:http://blog.51cto.com/linuxzkq/1878839

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
关系型数据库 MySQL PHP
源码编译安装LAMP(HTTP服务,MYSQL ,PHP,以及bbs论坛)
通过以上步骤,你可以成功地在一台Linux服务器上从源码编译并安装LAMP环境,并配置一个BBS论坛(Discuz!)。这些步骤涵盖了从安装依赖、下载源代码、配置编译到安装完成的所有细节。每个命令的解释确保了过程的透明度,使即使是非专业人士也能够理解整个流程。
414 18
|
数据管理 关系型数据库 MySQL
数据管理服务DMS支持MySQL数据库的无锁结构变更
本文介绍了使用Sysbench准备2000万数据并进行全表字段更新的操作。通过DMS的无锁变更功能,可在不锁定表的情况下完成结构修改,避免了传统方法中可能产生的锁等待问题。具体步骤包括:准备数据、提交审批、执行变更及检查表结构,确保变更过程高效且不影响业务运行。
1490 2
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
948 3
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
1260 2
|
关系型数据库 MySQL 数据库
vertx 的http服务表单提交与mysql验证
本文介绍了如何使用Vert.x处理HTTP服务中的表单提交,并通过集成MySQL数据库进行验证,包括项目依赖配置、表单HTML代码和完整的Vert.x服务代码。
189 2
|
SQL JavaScript 关系型数据库
Node服务连接Mysql数据库
本文介绍了如何在Node服务中连接MySQL数据库,并实现心跳包连接机制。
224 0
Node服务连接Mysql数据库
|
关系型数据库 MySQL Java
【Azure 应用服务】App Service 无法连接到Azure MySQL服务,报错:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
【Azure 应用服务】App Service 无法连接到Azure MySQL服务,报错:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
660 0
|
Kubernetes 关系型数据库 MySQL
k8s练习--通过NFS+PV+PVC+POD,部署一个MySQL服务,并将MySQL的数据进行持久化存储
本文档介绍了如何使用Kubernetes (K8s)、NFS、PersistentVolume (PV)、PersistentVolumeClaim (PVC)和Pod来部署并实现MySQL服务的数据持久化存储。Kubernetes是一个用于自动化部署、扩展和管理容器化应用的强大平台。NFS作为一种网络文件系统协议,能够使Kubernetes集群中的Pod跨节点访问共享文件。PV和PVC机制则提供了持久化的存储解决方案,确保数据即使在Pod生命周期结束后仍得以保留。
1206 0
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用问题之连接到MySQL的从库时遇到其他服务也连接到了从库,该如何处理
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。

推荐镜像

更多
下一篇
开通oss服务