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

 更新时间:2019年11月14日 13:42:08   作者:扛麻袋的少年  
mysql 支持 socket 和 TCP/IP 连接。那么 mysql.sock 这个文件有什么用呢?本文给大家介绍的非常详细,需要的朋友参考下吧

错误信息:

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

出现问题原因:

有可能是 my.cnf 配置文件中设置了 [mysqld] 的参数 socket ,而没有设置[client]的参数socket

mysql.sock 文件有什么用:

mysql 支持 socket 和 TCP/IP 连接。那么 mysql.sock 这个文件有什么用呢?连接localhost通常通过一个Unix域套接字文件进行,一般是/tmp/mysql.sock。如果套接字文件被删除了,本地客户就不能连接。/tmp 文件夹属于临时文件,随时可能被删除。

1.TCP 连接(如果报错 /tmp/mysql.sock,你可以尝试这种方式连接)

mysql -uroot -h 127.0.0.1 -p

2.socket 连接

mysql -uroot -p

解决方式:

添加 [client] 配置项,如下所示

配置前:(配置 [client] 前,会报错'/tmp/mysql.sock' (2))

[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

配置后:(配置 [client] 后,重启 mysql服务)

[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/var/lib/mysql/mysql.sock(跟这个socket路径一样)
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[client]
port=3306
socket=/var/lib/mysql/mysql.sock

end,本文结束,希望对大家有所帮助!

相关文章

  • MySQL 中这么多索引该怎么选择

    MySQL 中这么多索引该怎么选择

    这篇文章主要介绍了MySQL 中这么多索引该怎么选择,索引的本质是存储引擎用于快速查询记录的一种数据结构。特别是数据表中数据特别多的时候,索引对于数据库的性能就愈发重要,下文详细相关内容介绍,需要的小伙伴可以参考一下
    2022-09-09
  • Mysql优化方法详细介绍

    Mysql优化方法详细介绍

    MySQL的优化指的是一个很大的系统,面试的时候我之前是从sql的语句优化方面去说的,这种优化也有作用,不过是从逻辑方面去优化,下面这篇文章主要给大家介绍了关于MySQL查询缓存优化的相关资料,需要的朋友可以参考下
    2023-02-02
  • Mysql 下中文乱码的问题解决方法总结

    Mysql 下中文乱码的问题解决方法总结

    这篇文章主要介绍了Mysql 下中文乱码的问题解决方法总结的相关资料,这里提供了解决 Mysql 中文乱码问题的办法,需要的朋友可以参考下
    2016-11-11
  • MySQL中LIKE子句相关使用的学习教程

    MySQL中LIKE子句相关使用的学习教程

    这篇文章主要介绍了MySQL中LIKE子句相关使用的学习教程,LIKE子句一般用于WHERE语句中,需要的朋友可以参考下
    2015-12-12
  • mysql服务性能优化—my.cnf_my.ini配置说明详解(16G内存)

    mysql服务性能优化—my.cnf_my.ini配置说明详解(16G内存)

    这篇文章主要介绍了mysql服务性能优化—my.cnf_my.ini配置说明详解(16G内存),需要的朋友可以参考下
    2016-05-05
  • mysql中错误:1093-You can’t specify target table for update in FROM clause的解决方法

    mysql中错误:1093-You can’t specify target table for update in F

    最近在工作中遇到了一个mysql错误提示1093:You can’t specify target table for update in FROM clause,后来通过查找相关的资料解决了这个问题,现在将解决的方法分享给大家,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • MySQL8.x使用GRANT为用户赋权时报错的解决

    MySQL8.x使用GRANT为用户赋权时报错的解决

    这篇文章主要介绍了MySQL8.x使用GRANT为用户赋权时报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • MySQL慢查询日志的作用和开启

    MySQL慢查询日志的作用和开启

    这篇文章主要给大家介绍了关于MySQL慢查询日志的作用和开启的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • MySQL 独立索引和联合索引的选择

    MySQL 独立索引和联合索引的选择

    为了提高数据库效率,建索引是家常便饭;那么当查询条件为2个及以上时,我们是创建多个单列索引还是创建一个联合索引好呢?他们之间的区别是什么?哪个效率高呢?本文将详细测试分析下。
    2021-05-05
  • 深入浅析Mysql联合索引最左匹配原则

    深入浅析Mysql联合索引最左匹配原则

    这篇文章主要介绍了Mysql联合索引最左匹配原则,使用联合索引的好处多多,具体内容详情大家跟随脚本之家小编一起学习吧
    2018-06-06

最新评论