前言:
今日在部署mysql应用时,遇到mysql无法启动错误
环境:
系统:centos 6.8 x64
mysql:mysql 5.7
问题:
采用mysql 官方yum 源安装mysql5.7,安装后修改了my.cnf 默认的datadir 路径为自定义目录。
启动mysql 报datadir 目录无权限,错误信息如下。
Initializing MySQL database: mysqld: Can't create directory '/data/mysql/' (Errcode: 17 - File exists)
2016-09-20T01:51:47.062108Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated.
Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2016-09-20T01:51:47.064457Z 0 [ERROR] Aborting
[FAILED]
解决方案:
确认datadir 目录属主 属组均为mysql 用户,应该不是用户权限的问题,这时想起SELinux 默认是开启状态,会不会是SELinux 的问题,为了确认问题,临时关闭SELINUX
# setenforce 0
也可边查看SELINUX 日志边启动mysql服务
# tail -f /var/log/audit/audit.log
确认