[oot@cent65 bin]# service mysqld start Starting MySQL.2019-10-28T15:56:47.786960Z mysqld_safe error: log-error set to '/data/log/mysqld.log', however file don't exists. Create writable for user 'mysql'. The server quit without updating PID file (/data/mysql/mysqld.pid).[失败]
[root@cent65 bin]# touch /data/log/mysqld.log 添加文件后,log错误没了,pid还有,看权限也没啥问题,又重新授权一次还是不行。。。 其中datadir=/data/mysql
[root@cent65 log]# cd /data/mysql [root@cent65 mysql]# ll 总用量 110652 -rw-r----- 1 mysql mysql 56 10月 29 00:12 auto.cnf -rw------- 1 mysql mysql 1676 10月 29 00:12 ca-key.pem -rw-r--r-- 1 mysql mysql 1112 10月 29 00:12 ca.pem -rw-r--r-- 1 mysql mysql 1112 10月 29 00:12 client-cert.pem -rw------- 1 mysql mysql 1680 10月 29 00:12 client-key.pem -rw-r----- 1 mysql mysql 425 10月 29 00:12 ib_buffer_pool -rw-r----- 1 mysql mysql 12582912 10月 29 00:12 ibdata1 -rw-r----- 1 mysql mysql 50331648 10月 29 00:12 ib_logfile0 -rw-r----- 1 mysql mysql 50331648 10月 29 00:12 ib_logfile1 drwxr-x--- 2 mysql mysql 4096 10月 29 00:12 mysql drwxr-x--- 2 mysql mysql 4096 10月 29 00:12 performance_schema -rw------- 1 mysql mysql 1680 10月 29 00:12 private_key.pem -rw-r--r-- 1 mysql mysql 452 10月 29 00:12 public_key.pem -rw-r--r-- 1 mysql mysql 1112 10月 29 00:12 server-cert.pem -rw------- 1 mysql mysql 1676 10月 29 00:12 server-key.pem drwxr-x--- 2 mysql mysql 12288 10月 29 00:12 sys [root@cent65 mysql]# pwd /data/mysql [root@cent65 mysql]# chown -R mysql:mysql /data/mysql [root@cent65 mysql]# chmod -R 755 /data/mysql [root@cent65 mysql]# 上面重新授权不记得有没验证... 我怒了!直接执行下面的。。。 [root@cent65 ~]# chown -R mysql:mysql /data [root@cent65 ~]# chmod 775 /data [root@cent65 ~]# service mysqld start Starting MySQL.[确定]
于是,从网上扒拉了一圈,能试的基本上都试一下 问题的原因总结的灰常到位
出现问题的可能性 1、可能是/usr/local/mysql/data/数据目录mysql用户没有权限(修改数据目录的权限) 解决方法 :给予权限,执行 "chown -R mysql.mysql /usr/local/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 = /usr/local/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用户。
原文链接:https://blog.csdn.net/eagle89/article/details/79813405
|