docker启动mysql出现ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket

原因

根据我的大量实验,发现用docker启动mysql,必须添加-v映射内部的 /var/lib/mysql, 少了就会出现

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

所以,完整的命令是,先在宿主机创建 mysql数据目录,再启动mysql,映射到宿主机

# mkdir /root/tmp1         # 新建或者保持这个目录内部干净
# docker run -d -p 3307:3306 -v /root/tmp1:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456  mysql
# docker exec -it {生成的容器id} bash

用exec 进入容器后,再运行 mysql -u root -p
输入密码,就不会报错 ERROR 2002 (HY000) 了。

猜你喜欢

转载自blog.csdn.net/u014126257/article/details/108700282