Can‘t read dir of ‘/etc/mysql/conf.d/‘ (OS errno 2 - No such file or directory)解决方法
出现这个的原因是:因为Centos7安全Selinux禁止了部分安全权限,导致mysql和mariadb在进行挂载/var/lib/mysql的时候会提示上面的信息。今天在做项目的时候,使用docker 拉取mysql:5.7并创建容器运行时,发现容器是创建起来了但是并没有运行起来。具体错误如上:Can‘t read dir of ‘/etc/mysql/conf.d/原因是mysql目录不存在。
·
今天在做项目的时候,使用docker 拉取mysql:5.7并创建容器运行时,发现容器是创建起来了但是并没有运行起来。如下图:
出现了闪退的情况
然后我查了一下mysql日志:
命令如下:
docker logs --tail 50 --follow --timestamps mysql
具体错误如上:Can‘t read dir of ‘/etc/mysql/conf.d/
出现这个的原因是:因为Centos7安全Selinux禁止了部分安全权限,导致mysql和mariadb在进行挂载/var/lib/mysql的时候会提示上面的信息
所以真正解决该问题的方法就是:既然不能read取到需要都的文件,那我们就给这个目录及文件创建出来:命令如下:
sudo mkdir /etc/mysql/conf.d
但是可能很多人又会出现以下错误:
原因是mysql目录不存在
此时应加上参数-p,即没有找到此目录就自动创建:
sudo mkdir -p /etc/mysql/conf.d
然后再使用如下命令创建容器并运行:
sudo docker run --privileged=true \
-p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
更多推荐
已为社区贡献1条内容
所有评论(0)