zoukankan      html  css  js  c++  java
  • 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的目录, 果然一下子成功了!!

     

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

     

     

     

      

     

     

  • 相关阅读:
    laravel获取不到session
    laravel表单提交419错误
    'cross-env' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
    centos 虚拟机出问题 Oh no,something has gone wrong! 解决方法
    fastadmin关闭验证码登录
    php二维数组排序
    不自动显示html表单记住的内容 自动完成等清除记忆
    两个服务器之间使用minio同步文件
    redis获取数据库个数
    html跳转页面
  • 原文地址:https://www.cnblogs.com/notfresh/p/mysqlStartError.html
Copyright © 2011-2022 走看看