最新公告
  • 欢迎您光临编程知识分享网 加入我们
  • ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

    错误信息:

    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  报错:
    ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

    1.先查看mysql启动状态

    #/etc/rc.d/init.d/mysqld status

    2.mysql.sock位置查找与验证?

    # find / -name mysql.sock
    /Data/mydata/mysql.sock
    验证目录是否正确
    #mysql -u root -p -S /Data/mydata/mysql.sock

    备注:-S参数socket file文件验证

    3.验证mysql.sock文件权限和用户是否正确?
    如果是权限问题,则先改变权限
    #chown -R mysql:mysql /Data/mydata/mysql.sock

    [root@localhost ~]# /etc/init.d/mysqld start
    启动 MySQL: [ OK]

    4.永久解决

    修改/etc/my.cnf

    添加以下内容到/etc/my.conf:
    [client]
    socket = /Data/mydata/mysql.sock
    [mysqld]

    socket = /Data/mydata/mysql.sock

    赞赏

    微信赞赏支付宝赞赏

    编程知识分享网,一个有趣的平台!
    编程知识分享网|编程教程|资源下载|源码下载 » ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    关于编程知识分享网(www.ittce.com)
    编程知识分享网,一个有趣的平台,小心有毒!

    发表评论

    提供最优质的资源集合

    立即查看 了解详情
    升级SVIP尊享更多特权立即升级