Docker Mysql可以';t通过套接字连接到本地MySQL服务器
我使用下面的命令来运行mysql docker容器Docker Mysql可以';t通过套接字连接到本地MySQL服务器,docker,Docker,我使用下面的命令来运行mysql docker容器 docker container run -it --name mysql-test -e MYSQL_ROOT_PASSWORD=secret mysql bash 然后我尝试使用下面的命令连接到docker容器内的mysql mysql -uroot -psecret 这给了我以下的错误 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/va
docker container run -it --name mysql-test -e MYSQL_ROOT_PASSWORD=secret mysql bash
然后我尝试使用下面的命令连接到docker容器内的mysql
mysql -uroot -psecret
这给了我以下的错误
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
如果我在下面做的话,有时它会起作用,但不是所有的时间
touch /var/run/mysqld/mysqld.sock
然后我尝试在分离模式下运行容器,但它也给了我同样的错误
docker container run -d -p 3306:3306 --name mysql-test -e MYSQL_ROOT_PASSWORD=secret mysql
docker exec -it mysql-test bash
mysql -uroot -p
我做错了什么?这可能会有帮助
如果您在使用docker容器时,在登录MySQL服务器时遇到“无法通过套接字连接到本地MySQL服务器”/var/run/mysqld/mysqld.sock“(2)”错误: 检查/etc/mysql/my.cnf中套接字文件的路径 检查/var/run/mysqld/目录中是否存在mysqld.sock和mysqld.pid文件 如果没有,请将这些文件创建为:
touch /var/run/mysqld/mysqld.sock
touch /var/run/mysqld/mysqld.pid
chown -R mysql:mysql /var/run/mysqld/mysqld.sock
chown -R mysql:mysql /var/run/mysqld/mysqld.sock
chmod -R 644 /var/run/mysqld/mysqld.sock
现在重新启动mysql服务器,如下所示:
service mysql-server restart
现在,尝试再次登录mysql服务器。可能是@paulsm4的副本,我没有远程连接。我正在连接同一个容器。请阅读。。。这个响应。所有响应。您是否正在尝试从docker内部连接本地安装的mysql?如果是,您是否使用-v/var/run/mysqld/mysqld.sock:/var/run/mysqld/mysqld.sock装载卷?@deosha我正在连接到mysql容器的bash。我没有从主机连接。我是从集装箱接过来的,很抱歉。你能给出docker容器日志mysql测试的输出吗?我忘了检查日志,把它弄丢了。我试着再做一次