• mysql启动失败的一个解决方法


    先交代一个背景

     

    我的系统 ubuntu 16.04

    使用 root 命令登录后, 然后使用 service mysql start 启动mysql, 启动失败.

    那么我就去看日志文件.

    首先我要去查日志文件在哪里, 所以我就 使用 mysqld --help --verbose | less 命令去看配置文件放在哪里. (这些命令不懂什么意思请去搜索一下)

     

    然后我发现 我这个帮助文件里 说明了配置文件的位置 /etc/mysql/my.cnf, 然后经过顺藤摸瓜, 我找到了日志的位置.

     

    我发现日志的错误是:

     

    日志:
    59261 2019-02-24T00:37:54.085746Z 0 [ERROR] /usr/sbin/mysqld: Can't create/write to file '/var/lib/mysqldir/mysqld.pid' (Errcode: 13 - Permission denied)
    59262 2019-02-24T00:37:54.085786Z 0 [ERROR] Can't start server: can't create PID file: Permission denied

     


    而配置:
     user = mysql
     pid-file = /var/lib/mysqldir/mysqld.pid

    对饮文件夹/var/lib/mysqldir 权限:
    drwxr-xr-x 2 mysql mysql 4.0K Feb 23 19:33 mysqldir

     

    百思不得其解, 我看了好多博文, 都说什么权限改一下就好了, 尼玛我权限没问题啊, 于是我又找啊找,  找了好久也没找到合适的, 于是我又认真阅读了一下报错提示, 是 errCode 13

    终于发现了一篇博文, 

    https://www.linuxidc.com/Linux/2012-02/55533.htm

     

    解决办法

    我明白了, 原来是 ubuntu下面的 AppArmor在作怪啊, 我就进入其针对mysqld的配置文件, 使用 vim /etc/apparmor.d/usr.sbin.mysqld 然后查看了这个文件针对 mysqld的配置, 修改了 myql里面的配置PID的目录, 果然一下子成功了!!

     

    非常的喜悦啊, 这个东西困扰了我好久, 终于给他找到答案了!!!! 

     

     

     

      

     

     

  • 相关阅读:
    【memesuite】 FATAL: Template does not contain data section
    可变剪切位点强度计算[自用]
    面试官:分布式环境下,如何实现 Session共享
    MySQL 大表优化方案,收藏了细看
    为什么我们不用数据库生成 ID?
    10 分钟彻底理解 Redis 的持久化和主从复制
    linux系统变为只读,提示Readonly file system的解决办法
    一文读懂MySQL所有日志
    一次简单的 JVM 调优
    读文献BioNet: an RPackage for the functional analysis of biological networks
  • 原文地址:https://www.cnblogs.com/notfresh/p/mysqlStartError.html
Copyright © 2020-2023  润新知