mysql sock找不到

mysql sock找不到

大家好,又见面了,我是全栈君。

今天运行人员发现,运营后台进不去,登录后果然有问题

mysql sock找不到

首先介绍下mysql.sock文件:

MySQL有两种来连接方式,一种是通过TCP/IP,就是用-h参数指定要连接的mysqlserverI的IP,另一种是套接字socket,在这里就是mysql.sock文件。当我们的客户端与数据库服务器(mysqlserver)在同一台机器上时,就通过该文件来连接数据库。
 

使用sql语句登录MySQL出现如下报错

mysql sock找不到

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

进入/tmp 文件夹,果然tmp 下面mysql.sock文件不存在了,

启动mysqld 服务失败

 sudo service mysqld restart

mysql sock找不到非常疑惑的是什么问题导致的mysq.sock 文件找不到的呢?

分析:找不到mysql.sock文件,自然连接不了

原因:1)mysql服务没启动;2)sock文件路径设置错误 ;3)sock文件所在目录的权限问题;4)这个文件直接丢失了

解决步骤:

1)检查服务有没有启动(本次故障属于这种)

重启,问题解决

$ sudo /etc/init.d/mysql restart

2)在my.cnf文件中查看socket参数指定的路径,查看这个路径有没有访问权限

3)到那个路径下去看一下到底有没有这个mysql.sock文件,如果该路径下没有sock文件,我们先用find命令找出这个文件的位置,如果find也找不到,重启一下mysql服务即可,会自动生成一个。然后把他复制到soctek参数指定的路径下去。或者建立一个软连接,这也是比较推荐的方法,比如这个文件在/var/lib/mysql.sock,socket参数指定的路径是/tmp/mysql.sock。

我们就可以这样创建:

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

,创建完之后,再尝试连接

另外需要注意的是,mysql.sock文件默认是在/tmp下,数据库启动的时候,系统也默认去这个文件下找mysql.sock文件,但是/tmp目录有时会被某个定时任务给清除,那么我们可以给/tmp目录加一个sticky权限,保护其不被删除,

chmod +t /tmp即可

,使得/tmp下的文件只能由文件所有者和root用户才能删除

4)如果还是报那个错误,我们就用TCP/IP来连接

mysql -uroot -h 192.168.142.160 -p     #-h后面是数据库服务器的IP

或者 mysql -uroot -h 127.0.0.1 -p

 

参考连接:https://blog.csdn.net/keil_wang/article/details/88641735

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111880.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • webpack(2)webpack核心概念「建议收藏」

    webpack(2)webpack核心概念「建议收藏」前言本质上,webpack是一个用于现代JavaScript应用程序的静态模块打包工具。当webpack处理应用程序时,它会在内部构建一个依赖图(dependencygraph),此

    2022年8月7日
    7
  • 【考研经验】一个苍山的不入流的学生的考研之路[通俗易懂]

    【考研经验】一个苍山的不入流的学生的考研之路[通俗易懂]转载于王道论坛,原文作者为:YaphetS迷弟点击原文链接,可进入原帖。如果要是让我再考一次的话,我一定不会像这次这样吊儿郎当。眼前仿佛回到了2017年的寒假,刚过完年,几乎从未…

    2022年5月13日
    38
  • 晴天的魔法乐园——谢尔宾斯基地毯(递归打印图形)「建议收藏」

    晴天的魔法乐园——谢尔宾斯基地毯(递归打印图形)「建议收藏」题目链接:https://judger.net/problem/1061ProblemDescription谢尔宾斯基地毯是一种分形图案,它的定义如下:令F(n)表示嵌套n层的谢尔宾斯基地毯,那么(下面的“空”均表示空格,仅为示意,实际输出时应仍为空格)当n=1时,F(1)为:空当n=2时,F(2)为:空空空空X空空空空一般地,如果F(n-1)表示嵌…

    2022年7月13日
    15
  • Parallel ForEach For 多线程并行计算使用注意

    Parallel ForEach For 多线程并行计算使用注意之前用DataTable进行遍历,出现索引超出范围问题,因为List<T>也只支持单线程,改用ConcurrentBag解决问题。在ParallelForEach/For外的变量要避免同时操作同一个变量造成数据不一致的情况。List<T>转为ConcurrentBagConcurrentBag<T>concT=newC…

    2022年7月19日
    14
  • 数学建模之MATLAB画图汇总

    1.二维数据曲线图1.1绘制二维曲线的基本函数1.plot()函数plot函数用于绘制二维平面上的线性坐标曲线图,要提供一组x坐标和对应的y坐标,可以绘制分别以x和y为横、纵坐标的二维曲线。例:t=0:0.1:2*pi;x=2*t;y=t.*sin(t).*sin(t);plot(x,y);2.含多个输入参数的plot函数plot函数…

    2022年4月4日
    180
  • java StringTokenizer

    java StringTokenizerStringTokenizer是一个用来分隔String的应用类,相当于VB的split函数。1.构造函数publicStringTokenizer(Stringstr)publicStringTokenizer(Stringstr,Stringdelim)publicStringTokenizer(Stringstr,Stringdelim,boolean

    2022年8月11日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号