我们的LAMP是搭建在UBUNTU 12.04 LTS上的. LAMP是通过编译的方式进来安装的. 在一次处理意外挂机时由于未知的原因在重启后发现无法连接数据库了, 在打开网站时出现如下的的提示:

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

出错的信息已经提示的很清楚, 就是/var/run/mysqld/mysqld.sock 这个文件找不到了, 试着通过PuTTY去查询该文件时, 果然发现是无法这个文件不存在.  并且无法启动MYSQL, 在无数次问询度娘及狗狗之后, 也没有发现有权威的解决方法(方法是有, 但是可能没有找到). 一度怀疑没有这个文件, 可是在我本地搭建的同样的环境中却有这个文件存在. 那就证明了一件事, 就是这个文件果然是在重启过程中丢失了. 既然本地有, 那就把本地的文件COPY到服务器上就可以吧, 本以为非常简单的事情, 结果却发现无法拷下来. 如图:

即使强制复制也不行. 遍寻网络也没有这样的解决方案, 关注点再次转回直接在服务器上进行修复. 在查询网络时, 发现有用其他的方式安装的路径是放在/var/lib/mysql/mysql.sock, 如果是这样的话, 就给它建一个软链接就好. 由于我的mysql是编译安装的, 它的配置文件是在这个地方: /var/run/mysql/, 这样的话就把已经存在的文件地址里链接过去:

ln -s /var/lib/mysql/mysql.sock /var/run/mysql/mysql.sock

然后重启服务即可.

后来查看了一下这个mysql.sock文件属性, 有如下的提示:

注意mysqld.sock的属性是Srwxrwxrwx, 这个文件类型是s, 很少见的一种文件类型, 后狗狗了一下, 发现是套接字文件(sockets),这种文件一般用在网络上的资料套接,mysqld守护进程生成了这个文件,其他与mysql相关的程序想使用mysql,估计就是通过这个文件了。这种特殊文件即使是最高权限的root用户,也是不能查看不能编辑的,有点像档案标志是p的管道文件.

而我的情况不一样, 并没有/var/lib/mysql/mysql.sock这个文件, 所以还要想其他的方法, 后来我找到另一种解决, 就是重建授权表, 具体如下操作:

#usr/local/bin/mysql_install_db  //以root重建授权表

或者是以mysql的身份:

#su mysql

$/usr/local/bin/mysql_install_db //重建授权表

然后就会出现如下的信息:

$/usr/local/bin/mysqld_safe &   //mysqld_safe & 启动mysql的守护进程

$/usr/local/bin/mysql //测试

mysq>bye;

至此, ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 的问题解决.

source: http://www.cnblogs.com/wwufengg/p/error-2202-can-not-connect-mysql.html

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)-mysql.sock丢失解决方案的更多相关文章

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

    有时候,当我们使用"mysql"."mysqladmin"."mysqldump"等命令管理数据库时,服务器抛出类似如下错误: 一.错误现场 ...

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

    从供应商手中接手一个云平台(Windwos Azure)上的MySQL数据库,登录数据库时遇到错误: $mysql -uroot -p Enter password: ERROR 2002 (HY00 ...

  3. ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var mysql 启动不了(转载)

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var mysql 启动不了   ps -A | gr ...

  4. Mac mySql ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)的解决办法

    我的环境:Mac 10.11.6 ,mysql  5.7.14  . mac mySql 报错ERROR 2002 (HY000): Can't connect to local MySQL serv ...

  5. linux云服务器mysql ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’

    一早上过来发现网站打开报错,数据库连接不上.. 有人改密码? putty进去,mysql -uroot -p 输入密码后,报错 ERROR 2002 (HY000): Can't connect to ...

  6. 更换mysql数据目录后出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 的解决办法

    服务器上的mysql默认数据目录为/var/lib/mysql/,同时服务器的/空间不是很大,而近期又有大量的日志需要导入进行分析,时常搞得/的空间捉襟见肘,晚上一狠心就想把mysql的数据目录转移到 ...

  7. 启动mysql错误ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

    ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ ( ...

  8. 安装mysql后ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var mysql 启动不了

    ps -A | grep -i mysql kill 列出来的进程 service mysql start 我的问题就解决了 ------------------------------------- ...

  9. 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) 背景: mys ...

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

    好久不用mysql,今天突然想用的时候, mysql -uroot -p 直接报了下面的错误 ERROR 2002 (HY000): Can't connect to local MySQL serv ...

随机推荐

  1. selectedIndex返回被选中的option的index.

    / <label for="city">城市</label> <select id="city" name="schoo ...

  2. yield的表达式形式、面向过程编程(grep -rl 'root' /etc)

    一.yield的表达形式 def foo(): print('starting') while True: x=yield None#return 2 print('value :',x) g=foo ...

  3. Hurst指数以及MF-DFA

    转:https://uqer.io/home/ https://uqer.io/community/share/564c3bc2f9f06c4446b48393 写在前面 9月的时候说想把arch包加 ...

  4. 关于shared pool的深入探讨(一) 【转载】

    关于shared pool的深入探讨(一)   作者:eygle |English [转载时请标明出处和作者信息]|[恩墨学院 OCM培训传DBA成功之道]链接:http://www.eygle.co ...

  5. HadoopHA简述

    1 概述 在hadoop2.0之前,namenode只有一个,存在单点问题(虽然hadoop1.0有 secondarynamenode,checkpointnode,buckcupnode这些,但是 ...

  6. Deep learning Reading List

    本文来自:http://jmozah.github.io/links/ Following is a growing list of some of the materials i found on ...

  7. STL 中的链表排序

    一直以来学习排序算法, 都没有在链表排序上下太多功夫,因为用得不多.最近看STL源码,才发现,原来即使是链表,也能有时间复杂度为O(nlogn)的算法, 大大出乎我的意料之外,一般就能想到个插入排序. ...

  8. netty应用

    http://www.blogjava.net/yongboy/archive/2013/05/13/399203.html http://shentar.me/tag/netty-2/ 代理 htt ...

  9. Java内置锁synchronized的可重入性

    学习自 https://blog.csdn.net/aigoogle/article/details/29893667 对我很有帮助 感谢作者

  10. $git学习总结系列(4)——gitignore文件

    有时候工作区中会有我们创建的一些密码配置文件,或者自动生成的一些临时文件,比如python代码编译产生的.pyc文件和java代码编译产生的.class文件等,我们在提交代码的时候没有必要把这些文件也 ...