linux中MySQL连接找不到mysql.sock文件

遇到了linux系统下启动找不到mysql.sock的问题

原因分析:

  因为数据比较大,将MySQL的存储大文件直接存储在根目录文件下,导致tem下面的mysql.sock文件被删除,所以无法连接到MySQL。

解决方案:

  1.停止MySQL服务

  service mysqld stop;

  2.将大的文件移动到剩余空间较大的目录下

  mv mysql_data /xxx

  3.对 mysql_data 文件夹做软连接

  ln -s /home/xxx /mysql_data

  命令解析:对移动后的xxx位置的文件做/mysql_data处的软连接 (个人理解类似于Windows的快捷方式)

  4.重启MySQL服务

  service mysqld restart

用到的命令:

查看MySQL导入数据路径

登录MySQL后:

show variables like ‘%dir%‘;

结果:

如图所示,datadir  就是导入数据存放的路径。

若不做软连接需要将mysql.cnf做修改,如图:

时间: 2024-12-21 09:38:34

linux中MySQL连接找不到mysql.sock文件的相关文章

MySQL笔记-最简单的方法来解决找不到mysqld.sock文件的问题

首先,环境:ubuntu 14.04,采用apt-get的方式安装的,手动安装可能路径设置稍有区别. 1.安装MySQL后,用命令行首次启动时发现找不到Mysqld.sock文件,提示: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2),如图: 2.网上的方法很多不实用,这里介绍一种最简单的方法来解决这个问题. # sudo /etc/i

Linux中root用户找不到JAVA_HOME

Linux中root用户找不到JAVA_HOME 在Ubuntu环境中安装好Java环境后设置环境变量:在/etc/profile中设置好了JAVA_HOME变量并引入到PATH中,用于Ubuntu默认是不以root用户登录的,这时echo $PATH可以看到JAVA_HOME已经被设置好了,java命令也可以执行.接下来su root,再输入java命令提示找不到java命令,$PATH中也找不到JAVA_HOME这个路径了.查了很久的资料也没有找到原因,后来偶然切换用户的时候用了su - r

Linux中的默认权限与隐藏权限(文件、目录)

一个文件(或目录)拥有若干个属性,包括(r/w/x)等基本属性,以及是否为目录(d)与文件(-)或连接文件(l)等属性.此外,Linux还可以设置其他系统安全属性,使用chattr来设置,以lsattr来查看,最重要的是可以设置其不可修改的特性,即便是文件的拥有者都不能进行修改.这个属性相当重要,尤其是在安全机制方面(security). 文件默认权限:umask 当建立一个新的文件或目录时,它的默认属性是与umask有关的.通常,umask就是指定当前用户在建立文件或目录时的属性默认值.那么,

Linux中Hibernate连接不上MySql,但是在外网都能访问

题描述 在Linux上使用Spring+Hibernate+dbcp连接本机上的MySQL时,出现异常: [ERROR][2014-09-1614:00:59,343][com.ocyd.jeecgframework.core.common.exception.MyExceptionHandler]org.springframework.transaction.CannotCreateTransactionException:Could not open Hibernate Session fo

mysql 提示找不到mysql.sock文件

免编译安装mysql后,出现错误提示: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 解决方法: 1.vi /etc/my.cnf              找到socket=这项 2.修改socket路径:socket=/usr/local/mysql/lib/mysql.sock  #根据mysql安装目录修改 3.ln -s /usr/local/my

centos无法启动mysql,找不到mysql.sock文件

找不到sock常规情况应该是my.cnf配置没写对.另外也可能是权限问题. 1./var/lib/mysql 所有文件权限 改成mysql.mysql: 2.修改/etc/my.cnf文件: [mysql d] socket=/var/lib/mysql .sock [mysql ] socket=/tmp/mysql .sock 或者直接link: ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

linux中 $符号连接数字的含义

linux中$#,$0,$1,$2,[email protected],$*,$$,$?的含义 $# 是传给脚本的参数个数$0 是脚本本身的文件名$1 是脚本后接的第一个参数$2 是脚本后接的第二个参数[email protected] 是传给脚本的所有参数列表,"$1" "$2" "$3" - "$n"$* 是以一个单字符串显示传给脚本的所有参数,"$1 $2 $3 - $n"$$ 是脚本运行的当前进程I

linux中的 .d 的目录 和 .rc 的文件

.d的目录:一般为了保持对原有配置方式的兼容,以及联系性,而增加的.d结尾目录如: /etc/X11/xorg.conf 这原本是个文件,现在也有了一个/etc/X11/xorg.conf.d这样的目录,显卡驱动的相关设置原本是放在/etc/X11/xorg.conf这个文件中的,现在为了配置文件的简洁和灵活性,可以将配 置按照情况分配,扔到/etc/X11/xorg.conf.d里面去 像“规则”一样的方式来添加,系统会自动去这个/etc/X11/xorg.conf.d里面去找这些规则并按照规

linux中忘记连接MySQL的密码怎么办?

1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库.?因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的?状态下,其他的用户也可以任意地登录和修改MySQL的信息.可以采用将MySQL对?外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全?状态.最安全的状态是到服务器的Console上面操作,并且拔掉网线.如果是在网上租的云服务器那我们就远程修改2.修改MySQL的登录设置:?#vim /etc/my.cnf?