ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/usr/local/mysql/mysql.sock‘

在使用Dockerfile构建MySQL容器过程中遇到两个问题:1) 无法通过socket连接本地MySQL服务器,原因是/etc/my.cnf未被清空,解决方案是删除该文件内容并重建MySQL镜像及容器;2) Docker重启失败,日志显示环境配置可能有问题,通过检查/etc/docker/daemon.json发现镜像加速器配置错误,修正为阿里云镜像加速器或删除文件即可解决问题。

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

Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock'

问题一

在用dockerfile构建MySQL容器时,进入容器给MySQL数据库权限

docker exec -it afce91a3396a /bin/bash

mysql -u root -p		登录数据库

登录数据库时,发现先以下报错:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock' (2)

解决

我发现的问题是,在/etc/my.cnf的内容没有被脚本清空,导致我在/opt/mysql/my.cnf的文件没有执行起来!
只需要

解决过程

1、vim /etc/my.cnf 把内容全部删掉

把内容全部清空就可以了,在清空之前最好备份一下,否则再出错可以备份回来

cp my.cnf my.cnf.bak

2、把原有的容器删掉

[root@localhost mysql]# docker ps
CONTAINER ID   IMAGE          COMMAND   CREATED          STATUS          PORTS                     NAMES
afce91a3396a   msyql:centos   "init"    17 seconds ago   Up 16 seconds   0.0.0.0:49153->3306/tcp   mysql--server

[root@localhost mysql]#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值