mysql命令运行报错:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘

前言

一个很久没用的服务器,服务器上已安装了mysql,并且通过sqlyog3306端口可以正常访问。

然而我直接在命令行里面输入 mysql -uroot -p 想直接在服务器里面连接mysql 的时候,报错:

Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

解决方案

查了一下,是因为/var/run/mysqld/mysqld.sock这个文件的路径不对。

进到 mysql 的config路径下,一般是在:

vi /etc/mysql/my.cnf

然后看到其中 [mysqld] 的socket配置为:

socket          = /data/mysql/mysqld.sock

因此把这个sock文件挂载到 /var/run/mysqld/mysqld.sock 就可以了:

ln -s /data/mysql/mysqld.sock /var/run/mysqld/mysqld.sock

 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
根据引用的错误信息,Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (13),这个错误通常是由于无法通过指定的套接字连接到本地MySQL服务器引起的。这可能是由于文件访问权限问题引起的。根据引用,您可以使用命令"ls -ld /var/run/mysqld/"来检查套接字文件的访问权限。如果权限为700,则说明是权限问题。 为了解决这个问题,您可以尝试以下几个步骤: 1. 检查套接字文件的访问权限: - 执行命令"ls -ld /var/run/mysqld/",确保权限为700。 - 如果权限不是700,可以使用命令"sudo chmod 700 /var/run/mysqld/"来更改权限。 2. 重启MySQL服务: - 执行命令"sudo service mysql restart"来重启MySQL服务。 - 然后,再次尝试连接到MySQL服务器,看是否仍然出现相同的错误。 如果上述步骤没有解决问题,您还可以尝试以下方法: 3. 检查MySQL配置文件: - 执行命令"sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf"来编辑MySQL的配置文件。 - 确保配置文件中的socket路径与报错信息中的路径一致。 - 如果路径不一致,可以将配置文件中的socket路径修改为正确的路径。 - 保存文件并退出编辑器。 4. 检查MySQL进程是否正在运行: - 执行命令"sudo service mysql status"来检查MySQL进程的状态。 - 如果MySQL进程没有运行,请执行命令"sudo service mysql start"来启动MySQL服务。 通过执行以上步骤,您应该能够解决Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'错误。如果问题仍然存在,请参考MySQL的官方文档或寻求进一步的技术支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值