MacOS 下 docker 部署的 MySQL 重启后提示“chown: changing ownership of ‘/var/lib/mysql/mysql.sock‘: No such ...

我在 MacOS 的开发环境中搭建了一套 MySQL 服务。为了防止容器崩溃后数据丢失,按照网友的方法对容器内的/VAR/LIB/MYSQL进行了磁盘映射。工作了一段时间好好的,昨天我讲 Docker 环境重启了,发现 MySQL 启动不了了。启动日志显示:chown: changing ownership of '/var/lib/mysql/mysql.sock': No such file or directory。

结合百度、谷歌、Steckoverflow等平台的搜索,没有解决。大概的解决思路:
1、目录权限问题,将目录权限设置了全部用户可以读写,依然不行
2、重新Docker 部署MySQL 服务,重新检查容器运行命令,还是不行。

解决方式一:后来找到 GitHub 的一个讨论,讨论地址:https://github.com/docker-library/mysql/issues/939 。里面遇到了和我一样的问题,按照网友提供的方案:里面在容器启动前,删除容器对应的文件:/var/lib/mysql/mysql.sock。尝试操作了,确实可以。但是在我的开发环境 MySQL 连不上,需要再次重启一下容器(可能出发 MySQL 的修复机制)就可以了。

最终解决:再次查看https://github.com/docker-library/mysql/issues/939里面的讨论,里面有个延伸到stackoverflow(地址:https://stackoverflow.com/questions/64146845/mysql-not-starting-in-a-docker-container-on-macos-after-docker-update)的讨论,最高分回答提到在 docker 桌面客户端禁用Use gRPC FUSE for file sharing的选项才行

image.png

我发现我的客户端是没有开启Use gRPC FUSE for file sharing这个选项的,我尝试了开启“Use gRPC FUSE for file sharing”,重启 docker,发现操作正常了。mysql 服务关闭再开启也没问题了。
不过我现在还是不懂其中原理,先忙手头工作了,接下来再去探究其中原因。在这里也给遇到同问题的网友提供一些思路,可以一起讨论。



喜欢的朋友记得点赞、收藏、关注哦!!!

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
回答:当出现"Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?"的错误提示时,通常表示无法连接到Docker守护进程。这可能是由于Docker守护进程未运行或者无法访问的原因导致的。要解决此问题,你可以执行以下步骤: 1. 确保Docker守护进程正在运行。你可以通过运行"systemctl status docker"命令(在Linux系统上)或者"Docker Desktop"应用程序(在Windows和macOS上)来检查Docker守护进程的状态。 2. 如果Docker守护进程未运行,请尝试启动它。在Linux系统上,你可以使用"systemctl start docker"命令启动Docker守护进程。在Windows和macOS上,你可以打开"Docker Desktop"应用程序并确保它处于运行状态。 3. 如果Docker守护进程正在运行但仍然无法连接,请检查是否存在权限问题。确保你以具有足够权限的用户身份运行Docker命令,或者尝试在命令之前使用sudo或管理员权限来运行命令。此外,还要确保当前用户已将自己添加到docker用户组中。 4. 如果问题仍然存在,你可以尝试重新安装Docker,以确保所有必要的文件和配置正确安装。确保按照官方文档的指示进行操作,并在安装过程中没有发生任何错误。 <span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [执行docker命令,出现Cannot connect to the Docker daemon at unix:///var/run/docker.sock.](https://blog.csdn.net/liyuanjunfrank/article/details/125196807)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?](https://blog.csdn.net/qq_58144672/article/details/127974660)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

武昌库里写JAVA

您的鼓励将是我前进的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值