mysq启动失败问题及场景分析

 更新时间:2021年07月14日 16:17:23   作者:gblfy  
这篇文章主要介绍了mysq启动失败问题及解决方法,通过问题分析定位特殊场景解析给大家带来完美解决方案,需要的朋友可以参考下

一、一站式解决

 1. 问题分析定位

# 找到MySQL的配置文件,复制mysql的数据目录
vim /etc/my.cnf

# 进入msyql的数据目录
cd /data/mysql

# 查看日志文件
vim mysql.err

[ERROR] The server_uuid stored in auto.cnf file is not a valid UUID.
[ERROR] Initialization of the server's UUID failed because it could not be read from the auto.cnf file. If this is a new server, the initialization failed because it was not possible to generate a new UUID.
[ERROR] Aborting

从上面日志可以看出,是我的uuid不符合校验,由于我是同一个虚拟机复制的,导致uuid以这样了,修改uuid的值即可

解决方案

find / -iname "auto.cnf"

vim /data/mysql/auto.cnf

# 原内容
[auto]
server-uuid=64cbb3d1-e150-11eb-81a2-000c2972fe1f

# 调整后内容,自定义即可,把最后一位f替换为a
[auto]
server-uuid=64cbb3d1-e150-11eb-81a2-000c2972fe1a


# 重新启动mysql
# centos7.x
systemctl restart mysql

# centos6.x
service myqld restart

二、特殊场景

2.1. 问题分析定位

一般出现这汇总情况就是mysql根目录下面的mysql.pid因为故障原因没了。

cd /data/mysql
ll

2.2. 解决方案

把mysql.pid恢复即可,如果恢复不了,九新建一个名称为mysql.pid的文件,添加mysql运行的pid即可,这个pid在mysql.sock.lock文件中,首先找到mysql.sock.lock的位置。

# 查找my.cnf
find / -iname "my.cnf"

# 查看文件内容
cat /etc/my.cnf

# 找到my.cnf文件的这一行
socket=/tmp/mysql.sock

# 进入到/tmp/
cd /tmp/

# 查看文件的内容
cat mysql.sock.lock

在这里插入图片描述

# mysql.sock.lock文件中的9136这个数字就是mysql的运行的pid
# 在mysql的根目录下面创建mysql.pid
vim mysql.pid

# 把刚才的 mysql.sock.lock文件中的9136添加进去
略

# 重启mysql
systemctl restart mysql

# 查看mysql状态
systemctl status mysql

2.3. 解决方案2

这是一种特殊情况,mysql.sock.lock和mysql.pid文件都没有怎么办呢?

# 查找my.cnf
find / -iname "my.cnf"

# 查看文件内容
cat /etc/my.cnf

# 找到my.cnf文件的这一行
socket=/tmp/mysql.sock

# 进入到/tmp/
cd /tmp/

# 查看文件的内容
vim mysql.sock.lock

# 添加一个现系统中,没有用到的pid,如果不知道怎么查,那就随机一个4位数的数字,添加进去。比如说9137

# 在mysql的根目录下面创建mysql.pid
vim mysql.pid

# 将刚才的mysql.sock.lock文件中的0137,添加到mysql.pid文件中,只要保持一致即可
# 重启mysql
systemctl restart mysql

# 查看mysql状态
systemctl status mysql

到此这篇关于mysq启动失败问题及解决方法的文章就介绍到这了,更多相关mysq启动失败内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL中Distinct和Group By语句的基本使用教程

    MySQL中Distinct和Group By语句的基本使用教程

    这篇文章主要介绍了MySQL中Distinct和Group By语句的基本使用教程,这里主要是针对查询结果去重的用法,需要的朋友可以参考下
    2015-12-12
  • Window下如何恢复被删除的Mysql8.0.17 Root账户及密码

    Window下如何恢复被删除的Mysql8.0.17 Root账户及密码

    这篇文章主要介绍了Window下如何恢复被删除的Mysql8.0.17 Root账户及密码,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • mysql datetime查询异常问题解决

    mysql datetime查询异常问题解决

    这篇文章主要介绍了mysql datetime查询异常问题解决的相关资料,这里对异常进行了详细的介绍和该如何解决,需要的朋友可以参考下
    2016-11-11
  • MySQL与PHP的基础与应用专题之数据控制

    MySQL与PHP的基础与应用专题之数据控制

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,本系列将带你掌握php与mysql的基础应用,本篇带你了解数据控制
    2022-02-02
  • MAC上Mysql忘记Root密码或权限错误的快速解决方案

    MAC上Mysql忘记Root密码或权限错误的快速解决方案

    这篇文章主要介绍了MAC上Mysql忘记Root密码或权限错误的快速解决方案的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • Mysql  DATEDIFF函数用法总结示例详解

    Mysql  DATEDIFF函数用法总结示例详解

    MySQL DATEDIFF()函数是MySQL中常见的日期函数之一,它主要用于计算两个日期之间的差值,单位可以是天、周、月、季度和年,DATEDIFF函数用于返回两个日期的天数,这篇文章主要介绍了Mysql  DATEDIFF函数,包括语法格式和示例代码讲解,需要的朋友可以参考下
    2023-03-03
  • 阿里云下配置MySQL远程连接的步骤详解

    阿里云下配置MySQL远程连接的步骤详解

    大家都知道阿里云默认是不能用客户端远程连接的,但最近因为工作的需要,不得不实现远程连接,下面这篇文章主要给大家介绍了在阿里云下配置MySQL远程连接的步骤,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-08-08
  • MySQL用户管理与PostgreSQL用户管理的区别说明

    MySQL用户管理与PostgreSQL用户管理的区别说明

    这篇文章主要介绍了MySQL用户管理与PostgreSQL用户管理的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • 解决mysql数据库导入sql文件不成功的问题

    解决mysql数据库导入sql文件不成功的问题

    这篇文章主要介绍了解决mysql数据库导入sql文件不成功的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • SQL实战演练之网上商城数据库用户信息数据操作

    SQL实战演练之网上商城数据库用户信息数据操作

    一直认为,扎实的SQL功底是一名数据分析师的安身立命之本,甚至可以称得上是所有数据从业者的基本功。当然,这里的SQL绝不单单是写几条查询语句那么简单,接下来请跟着小编通过案例项目进一步提高SQL的能力吧
    2021-10-10

最新评论