dockers链接数据库Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
时间: 2023-09-10 21:04:40 浏览: 168
Can’t connect to local MySQL through socket ‘/tmp/mysql.sock’解决方法
5星 · 资源好评率100%
出现这个错误是由于无法通过socket连接到本地的MySQL服务器。解决这个问题的方法如下:
首先,进入容器并找到mysqld.sock文件所在的路径。可以使用以下命令:
```
cd /var/run/mysqld/
ls
```
在这个路径下,你会看到mysqld.sock文件。将该文件删除或者移动到其他位置。
然后,执行启动MySQL的命令。如果你的/etc/init.d目录下是mysqld文件夹,那么使用以下命令:
```
/etc/init.d/mysqld start
```
如果启动成功,那么问题应该解决了。如果还是不行,可以尝试在删除/var/run/mysqld文件夹下的mysqld.sock后登录MySQL:
```
mysql -u root -p
```
然后再次执行启动命令:
```
/etc/init.d/mysql start
```
这样应该就能解决问题了。另外,你还可以尝试使用不同的docker run命令来创建MySQL容器,例如:
```
docker run -it -d --name mysql -e MYSQL_ROOT_PASSWORD=123456 8c0ef1d0be53
```
或者:
```
docker run -it -d --name mysql -v /data:/data -e MYSQL_ROOT_PASSWORD=123456 mysql:8-debian bash
```
这些方法应该能帮助你解决dockers链接数据库时出现的Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)错误。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [docker中Can‘t connect to local MySQL server through socket](https://blog.csdn.net/weixin_42814467/article/details/117335847)[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^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock](https://blog.csdn.net/weixin_41166529/article/details/128309178)[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^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文