• Docker容器启动lnmp环境下的mysql服务时报"MySQL server PID file could not be found"错误解决办法


    我在自己的mac笔记本上装了一个docker,并在docker容器中安装了lnmp环境,经常会遇到在使用"lnmp restart"命令启动lnmp服务的时候,mysql服务启动失败,启动日志:

    Stoping LNMP...
    Stoping nginx... nginx is not running.
     ERROR! MySQL server PID file could not be found!
    Gracefully shutting down php-fpm /etc/init.d/php-fpm: line 82: kill: (695) - No such process
    ................................... failed. Use force-quit
    Starting LNMP...
    Starting nginx...  done
    Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/var/37815a453e3e.pid).
    Starting php-fpm  done

    找到mysql的数据存放目录,我的是/usr/local/mysql/var目录下(这个目录可以通过/etc/my.cnf中的innodb_data_home_dir属性查看),找到以.err结尾对文件,根据日期查看最近对err文件:

    [root@37815a453e3e bin]# cd /usr/local/mysql/var
    [root@37815a453e3e var]# ll
    total 141556
    -rw-r----- 1 mysql mysql    27407 Sep 30 16:29 124dc886567c.err
    -rw-r----- 1 mysql mysql     6924 Sep 30 12:55 22415a597457.err
    -rw-r----- 1 mysql mysql    20626 Oct  1 17:02 37815a453e3e.err
    -rw-r----- 1 mysql mysql    41418 Sep 30 11:05 7f92c9fbcaea.err
    -rw-r----- 1 mysql mysql    36378 Sep 29 13:42 f25f067a6a86.err

    发现错误日中有如下错误信息:

    2018-10-01T14:05:29.741954Z 0 [Warning] Insecure configuration for --pid-file: 
      Location '/usr/local/mysql/var' in the path is accessible to all OS users.
      Consider choosing a different directory.
    2018-10-01T14:05:29.744299Z 0 [ERROR] Fatal error: Can't open and lock privilege tables:
      Table storage engine for
    'proxies_priv' doesn't have this option 2018-10-01T14:05:29.744399Z 0 [ERROR] Aborting

    解决办法,对数据目录授权:

    [root@6e1de98da6d4 var]# chown -R mysql:mysql /usr/local/mysql/var/
    [root@6e1de98da6d4 var]# lnmp mysql restart
    +-------------------------------------------+
    |    Manager for LNMP, Written by Licess    |
    +-------------------------------------------+
    |              https://lnmp.org             |
    +-------------------------------------------+
     ERROR! MySQL server PID file could not be found!
    Starting MySQL. SUCCESS! 
    [root@6e1de98da6d4 var]# 

    重启mysql服务,启动OK:

    [root@37815a453e3e var]# lnmp mysql restart
    +-------------------------------------------+
    |    Manager for LNMP, Written by Licess    |
    +-------------------------------------------+
    |              https://lnmp.org             |
    +-------------------------------------------+
    Shutting down MySQL.. SUCCESS! 
    Starting MySQL. SUCCESS! 

      

  • 相关阅读:
    LAMP环境搭建博客
    PHP项目中经常用到的无限极分类函数
    在PHP项目中,每个类都要有对应的命名空间,为什么?
    一键解决docker pull hello-world的问题
    网盘10M速度下载-亿寻下载器
    《提问的智慧》
    idea出现 Error:(1, 1) java: 非法字符: 'ufeff'解决方式
    多线程的四种实现方式
    Java中的get()方法和set()方法
    Java构造器(构造方法/constructor)
  • 原文地址:https://www.cnblogs.com/jun1019/p/9735149.html
Copyright © 2020-2023  润新知