初始化mysql目录:
mysqld --initialize --user=mysql --datadir=/data/msql
报错:
mysqld: Can't create directory '/data/msql' (Errcode: 13 - Permission denied)
一、如果是ubuntu系统
看下apparmor是不是限制MySQL默认数据目录是/var/lib/mysql,其它的目录权限都不可。修改文件:
/etc/apparmor.d/usr.sbin.mysqld
找到
# Allow data dir access
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
改为
# Allow data dir access
/data/mysql/ r,
/data/mysql/** rwk,
重启apparmor服务
service apparmor restart
二、如果是centos系统,默认会开启selinux;
打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=permissive或SELINUX=disabled后重启机器试试。

博客主要介绍了MySQL目录初始化报错的解决方法。在Ubuntu系统中,可能是apparmor限制了目录权限,需修改相关文件并重启服务;在CentOS系统中,默认开启的selinux可能导致问题,可修改配置文件并重启机器。

被折叠的 条评论
为什么被折叠?



