今天是举国欢庆的日子,但是Mariadb密码忘记了,于是巴拉巴拉的执行"mysqld_safe --skip-grant-tables &"这个神技能,打算跳过密码验证,直接登录到数据库中,更新密码;mysqld_stfe这条命令的同学应该清楚,首要条件是stop数据库,在执行mysqld_safe --skip-grant-tables &;这样才能更改登录数据库用户的密码;更新之后,发现一个很诡异的问题;

【悬案疑点】

这个msyql进程是存在的,但是查看mysql状态是关闭的,并且mysql3306端口也是监听的状态,这就奇怪了,我已经为了实现免密更新密码,特意干掉了mysql,为啥进程和端口仍然未停止呢?如图1~3所示

随后,修改完密码,我尝试system restart mariadb,查看mysql状态,仍然异常,此时kill -9都未能停止mysqld_safe莫名引起的神秘进程;

最后呢,tail /var/log/mariadb/mariadb.log日志,发现ERROR] mysqld: Table './mysql/user' is marked as crashed and should be repaired;这是user表损坏,干掉mysqld进程,mysqld_safe这个癞皮狗进程就会将其重新将mysql端口和进程拉启来

 【解决方案】

当我们修改完mysql登录用户验证密码之后,如何让mysql状态恢复正常,这才是我们的最终目的

竟然知道了什么原因导致mysql数据库异常(端口和进程干不掉),那就好办了,我们先ps -ef | grep mysqld_safe看看它这个赖皮狗是否起了进程,如果起了的话,二话不说直接干

杀死之后呢,我们ps -ef | grep mariadb查看mysql进程,没有直接影响,那么我们同样也是干,这个时候,这个进程便不会启动啦

最后呢,我们直接restart重启数据库即可恢复正常,完美~

【小结】

遇到这种问题,我们可以直接reboot通过重启系统的方式来解决,但是,我们不能直接这样做,难道我们每次遇到问题都重启系统来解决吗?这样,我们永远都不能发现问题,当一个问题reboot重启解决不了,那又该如何呢?换硬件服务器?卸载数据库,重新安装?呵呵,这不太现实吧,这样会让别人直接拿刀分分钟砍死你;虽然这不算是什么大故障,但是以小见大,所以说,我们遇到问题,首先冷静,尝试自己排查问题,借助谷歌百度,抓住关键性错误信息;一触即发,我们运维人员核心竞争力 就是处理问题能力和对待问题的态度,要有自己的思路和想法,这样才能立于不败之地~

ps:本章未完待续~后续会更新mysqld_safe的相关知识点;点击关注,精彩内容,有你好看~

............................

【国庆】记一次mysqld_safe引发mysql进程故障的更多相关文章

  1. [转]Spark 踩坑记:数据库(Hbase+Mysql)

    https://cloud.tencent.com/developer/article/1004820 Spark 踩坑记:数据库(Hbase+Mysql) 前言 在使用Spark Streaming ...

  2. 记一次裸迁 MySQL 经历

    记一次裸迁MySQL经历 前言:博主企业有一台企业阿里云机器,因为安装了云锁,造成服务器动不动就给我所死服务器.(就是那种 chattr +i /bin/bash ,分分钟日死狗 )趁着周末,Boos ...

  3. 关于Mysql错误:./bin/mysqld_safe --user=mysql& [1] 32710 121003 16:40:22 mysqld_safe Logging to '/var/log/mysqld.log'. 121003 16:40:22 mysqld_s

    [root@www]# ./bin/mysqld_safe --user=mysql&[1] 32710[root@www]# 121003 16:40:22 mysqld_safe Logg ...

  4. 故障案例 | 慢SQL引发MySQL高可用切换排查全过程

    作者:梁行 万里数据库DBA,擅长数据库性能问题诊断.事务与锁问题的分析等,负责处理客户MySQL日常运维中的问题,对开源数据库相关技术非常感兴趣. GreatSQL社区原创内容未经授权不得随意使用, ...

  5. 今日网站突然报错,mysql的故障

    Access denied for user 'root'@'localhost' (using password: YES) 错误位置 FILE: /var/www/html/ThinkPHP/Li ...

  6. Slave_SQL_Running: No mysql同步故障解决方法

    Slave_SQL_Running: No mysql同步故障解决      今天检查数据库发现一台MySQL Slave未和主机同步,查看Slave状态:mysql> show slave s ...

  7. MySQL数据故障时备份与恢复

    1.ib_logfile0和ib_logfile1是mysql用来存储操作执行的日志文件,用于事务暂存和回滚.当复制ibdata1数据文件到新的mysql中时,如果没有拷贝这两个日志文件,则会出现启动 ...

  8. keepalive配置mysql自动故障转移

    keepalive配置mysql自动故障转移 原创 2016年02月29日 02:16:52 2640 本文先配置了一个双master环境,互为主从,然后通过Keepalive配置了一个虚拟IP,客户 ...

  9. (4.1)mysql备份还原——mysql常见故障

    (4.1)mysql备份还原——mysql常见故障 1.常见故障类型 在数据库环境中,常见故障类型: 语句失败,用户进程失败,用户错误 实例失败,介质故障,网络故障 其中最严重的故障主要是用户错误和介 ...

随机推荐

  1. socketserver和socket的补充(验证客户端合法性)

    一.socket的补充 1.参数 socket.socket(family=AF_INET,type=SOCK_STREAM,proto=0,fileno=None) 参数说明: family 地址系 ...

  2. 第六十九天 dom与bom

    1.节点 dom与bom属 // DOM:文档对象模型 =>提高给用户操作document obj的标准接口 // DOM:以document为根,树状展开所有子节点 节点分类 // 节点分类: ...

  3. 【XSY3139】预言家 数位DP NFA

    题目描述 有一个定义在 \(\{0,1,2,3,4,5,6,7,8,9\}\) 上的合规表达式,包含三种基本的操作: 结合:\(E_1E_2\) 分配:\((E_1|E_2|\ldots|E_n),n ...

  4. 二.django项目环境搭建

    Ⅰ.web框架介绍 1.socket 服务端 1)客户端(手机中各种app.浏览器)是用来与服务端(网站的服务器程序)进行交互的 2)服务端类似发电厂,客户端类似电器,socket类似插座,互联网的数 ...

  5. Hadoop记录-hadoop jmx配置

    1.hadoop-env.sh添加export HADOOP_JMX_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dco ...

  6. Entity Framework入门教程(8)---预先加载、延迟加载、显示加载

    1.预先加载 预先加载:在对一种类型的实体进行查询时,将相关的实体作为查询的一部分一起加载.预先加载可以使用Include()方法实现. 1.加载一个相关实体类型 栗子:使用Include()方法从数 ...

  7. Javaweb学习笔记——(二十四)——————图书商城项目

    图书商城          环境搭建         1.导入原型             *用户模块             *分类模块             *图书模块              ...

  8. 运维工作笔记-------nginx的反向代理

    1.nginx的反向代理意义 一般来说,我们在项目中,不会直接让项目服务器ip与外网做直接映射,这样一则是不安全,二是客户直接去访问项目服务器,对项目服务器带来的压力太大,从而导致项目运行速度变慢,程 ...

  9. throws与throw

    throws与throw 1)throws出现在方法函数头:而throw出现在函数体:    2)throws表示出现异常的一种可能性,并不一定会发生这些异常:throw则是抛出了异常,执行throw ...

  10. Leetcode#461. Hamming Distance(汉明距离)

    题目描述 两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目. 给出两个整数 x 和 y,计算它们之间的汉明距离. 注意: 0 ≤ x, y < 231. 示例: 输入: x = ...