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

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545; min-height: 14.0px }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 }
span.s1 { font: 12.0px ".PingFang SC" }
span.s2 { font: 12.0px "Helvetica Neue" }

先交代一个背景

我的系统 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的目录, 果然一下子成功了!!

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

原文地址:https://www.cnblogs.com/notfresh/p/mysqlStartError.html

时间: 2025-01-11 03:15:44

mysql启动失败的一个解决方法的相关文章

phpStudy启动失败时的解决方法 提示缺vc9运行库

php5.3.5.4和apache都是用vc9编译,电脑必须安装vc9运行库才能运行. php5.5.5.6是vc11编译,如用php5.5.5.6必须安装vc11运行库. php7.0.7.1是vc14编译,如用php7.0.7.1必须安装vc14运行库. vc9和vc11运行库下载:https://pan.baidu.com/s/1dF9LslV 密码:v7ap php5.5以上才有64位的,其他均为32位.所以64位的系统最好把32位的运行库也安装上. 如果您下载的是32位的phpStud

windows下mysql安装失败的一个解决案例

操作系统:windows8.1,之前安装过mysql,这次安装在配置的最后一部执行“Apply security settings”的过程中弹出经典错误: Access denied for user 'root'@'localhost' (using password:YES) 网上寻找了各种方法,有:原mysql未卸载完全的,失败:有修改密码的,解决方法如下: 解决办法是重新设置root用户密码,在Windows平台下操作步骤如下:1.以系统管理员身份登录到系统:2.如果MySQL服务器正在

【Linux】Linux下安装MySQL版本冲突的一个解决方法

 在安装MySQL服务时出现如下错误: 要安装的版本是5.1.45,而之前有安装过5.0.22版本的,因此出现: MySQL conflicts withmysql-5.0.22-2.1.0.1.i386 MySQL-server conflicts with mysql-server-5.0.22-2.1.0.1.i386 使用rpm -e –nodeps mysql-5.0.22-2.1.0.1,删除之前的版本,如果没删除mysql-server-5.0.22-2.1.0.1.i386还

roscore启动失败问题及解决方法

ubuntu16.04下安装的ros kinetic版本,之前roscore打开很正常,今天打开时报错,错误信息如下: Invalid <param> tag: Cannot load command parameter [rosversion]: command [rosversion roslaunch] returned with code [1]. Param xml is <param command="rosversion roslaunch" name=

启动mysql时显示:/tmp/mysql.sock 不存在的解决方法

Can't connect to local MySQL server through socket '/tmp/mysql.sock' 上述提示可能在启动mysql时遇到,即在/tmp/mysql.sock位置找不到所需要的mysql.sock文件,主要是由于my.cnf文件里对mysql.sock的位置设定导致. mysql.sock默认的是在/var/lib/mysql, 如果发现确实是在该目录下,可以在[mysqld]下面加入mysql.sock的pathvi /etc/my.cnf(m

启动Mysql服务提示Can’t connect to local MySQL server through socket的解决方法

启动Mysql服务常会提示下面错误: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' 这是由于修改mysql服务的了socket文件mysql.sock位置,而导致无法通过mysql socket文件连接到mysql服务引起的,具体解决办法如下: 1.查看mysql服务的socket文件位置:mysql socket文件的位置是在/etc/my.c

关于MySQL的异常处理 Can&#39;t connect to MySQL server on localhost (10061)解决方法

首先检查MySQL 服务没有启动>如果没有启动,则要启动这个服务. 昨天,重起服务器后出现MySQL 'localhost' (10061)错误,开始以为是因为数据库链接打开过多,数据库资源耗尽的缘故,但是重启服务器以后,仍旧出现问题,于是在网上查找解决方法.大体如下: 解决办法: 第一步 删除c:\windows\下面的my.ini 第二步 打开c:\mysql\bin\winmysqladmin.exe 输入用户名 和密码 第三步 在dos下 输入 mysqld-nt -remove 删除服

MySQL连接数超过限制的解决方法

最近网站出现 User 数据库名称 has already more than 'max_user_connections' active connections 的报错,网站瘫痪.有必要研究下这个问题. max_user_connections 是 MySQL 用户连接数的最大值设置,整段语句的意思是:服务器的 MySQL 的最大连接数参数设置不足.解决方法:修改 MySQL 安装目录下 my.ini 或者 my.cnf 文件内的 max_user_connections 参数的数值,重启 M

Mysql学习之--Mysql启动失败案例

Mysql学习之--Mysql启动失败案例 系统环境: 操作系统:Linux RH6 数据库:  Mysql 5.6 在启动mysql server时,启动失败 [[email protected] mysql]# service mysql start Starting MySQL...The server quit without updating PID file [FAILED]b/mysql/ogg.pid). 查看mysql错误日志: [[email protected] mysql