docker 启动数据库 mysqld: Can‘t create directory ‘/var/lib/mysql/‘ (Errcode: 17 - File exists)

本文解决了一个常见的Docker MySQL容器启动失败的问题,原因是无法创建目录'/var/lib/mysql/',错误代码为17(文件已存在)。通过添加权限参数--privileged=true,使容器内的root用户拥有真正的root权限,从而成功解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 使用docker启动数据库,然后发现容器启动失败,为什么呢?

查看容器日志

 

what?不能创建文件,文件已经存在

mysqld: Can't create directory '/var/lib/mysql/' (Errcode: 17 - File exists)

🤔什么鬼?

完全没有头绪,经过查阅一些资料,其实很简单,只需要加入权限参数--privileged=true 需要加,这个参数的作用是:使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。

试试

成功搞定

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值