使用 命令赋予mysql所有者及权限_解决mysql启动报错ERROR! The server quit without updating PID file (/data/mysqldata/slav...

出现问题的可能性

1、可能是/opt/mysql/data/数据目录mysql用户没有权限或者socket目录权限

解决方法 :给予数据目录和socket目录权限,执行 “chown -R mysql.mysql /opt/mysql/data” 然后重新启动mysqld

2、可能进程里已经存在mysql进程

解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!

3、可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。

解决方法:去mysql的二进制日志目录看看,如果存在mysql-binlog.index,就赶快把它删除掉吧

4、mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件

请打开这个文件查看在[mysqld]下有没有指定数据目录(datadir)。

解决方法:请在[mysqld]下设置这一行:datadir = /opt/mysql/data

5、skip-federated字段问题

解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。

6、错误日志目录不存在

解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限

7、selinux惹的祸,如果是centos系统,默认会开启selinux

解决方法:先临时改为警告模式:[root@www php]# setenforce 0

然后打开/etc/sysconfig/selinux,把SELINUX=enforcing改为SELINUX=disabled

8、启动失败注意检查数据目录的权限,要与mysql程序运行用户权限一致。

[root@db01 mysql]# chown -R mysql.mysql ../mysql

最好是整个mysql程序目录都授权予mysql用户。

还有一个原因可能是:

查看配置文件/usr/local/mysql/my.cnf里有没有innodb_buffer_pool_size这个参数

innodb_buffer_pool_size:主要作用是缓存innodb表的索引,数据,插入数据时的缓冲;

默认值:128M;

专用mysql服务器设置此值的大小: 系统内存的70%-80%最佳。

如果你的系统内存不大,查看这个参数,把它的值设置小一点吧

总结:

在配置文件/etc/my.cnf添加错误日志参数,一切问题都解决

[mysqld_safe]

log-error = /data/mysql/logs/error.log

5914b2d81847b0ae4f45d582c042cf45.png

一般这样的错误都是没有创建目录或者权限不足,用mkdir -p创建目录或者赋mysql权限即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值