• mysql启动报错The server quit without updating PID file几种解决办法


    1.目录权限问题
    对mysql的安装目录和数据目录分别进行授权

    # chown -R mysql.mysql /usr/local/mysql
    # chown -R mysql.mysql /data/mysql
    # service mysqld start
    
    • 1
    • 2
    • 3

    2.可能进程里已经存在mysql进程
    解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!

    3.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
    解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。

    4.mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。
    解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data

    5.可能是/usr/local/mysql/data/mysql.pid文件没有写的权限
    解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然后重新启动mysqld!

    6.selinux惹的祸,如果是centos系统,默认会开启selinux
    解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试

    7.删除mysql库文件/data/mysql/中的“ib_*”文件,注意:** 执行该操作之前一定要对数据库进行备份,因为ibdata1存放的是所有数据文件,如果不小心删了库,那就惨了!!!(传说中的从删库到跑路。。。),然后重启mysql。

    8.查看日志有如下错误提示:Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed。
    解决办法:

    [root@localhost mysql]# rm -rf ib_logfile*
    
    • 1

    然后启动mysql,问题解决!

    9.看日志有这样的字样“initialize buffer pool,size=128.0M”,“cannot allocate memory for the pool”,大概意思是说无法分配足够的内存供pool使用。此时想到mysql配置文件中有相关的配置,于是更改如下参数:
    innodb_buffer_pool_size = 128
    #配置文件中该值默认为128M
    将这个值调小,再次启动mysql服务,问题解决!

    10.系统上缺少mysql的依赖文件

    # yum -y install libaio 
    # yum -y install numactl
    
    • 1
    • 2

    重新启动mysql服务,问题解决

  • 相关阅读:
    鸿蒙APP外包开发上线流程
    28 行为型模式-中介者模式
    docker介绍
    居延安《公共关系学》重点整理
    下载遥感数据慢的原因
    【面试题精讲】Java移位运算符
    Spring WebSocket实现实时通信的详细教程
    lvgl8.3.5版本 设置界面滚动条显示状态
    分词算法----正向和逆向最大匹配算法(含Python代码实现)
    搭建 Kafka 需要做什么准备?
  • 原文地址:https://blog.csdn.net/m0_52789121/article/details/126584724