1

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)

该报错的情况时socket文件存在,但是感觉是不识别

启动服务时可以采用指定socket文件位置的方式启动,(没成功,不知道是否有效,作为一种方法记录) 

./mysql -u root -p -s socket文件位置

可以采用删除socket文件的方法

Error: Linux下 mysql.sock文件丢失被删除解决方法 - Bodi - 博客园 (cnblogs)

#basedir:mysql安装路径,默认在/usr/local/mysql下;datadir:数据库存放路径,默认在/usr/local/mysql/data
#使用下面的命令启动后,会在/tmp/下生成一个mysql.sock文件
#./ 即为:/usr/local/mysql/bin

这个路径是安装mysql默认的安装路径,在安装解压版时路径是自定义的,将这个路径换为你自己的安装路径,以目前碰到的情况,只有CentOS7安装时可能不会自动生成sock文件,手动使用命令生成一个sock文件

 ./mysqld_safe  --user=mysql --basedir=/usr/local/mysql  --datadir=/usr/local/mysql/data &

重新生成socket文件,之后再直接使用  ./mysql -u root -p 启动即可

bin目录下启动mysql方式(mysql没有做成服务的情况) ./mysql start 或 ./mysqld start 

2

当不存在socket文件时,报错为Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

采用上面的方法重新生成socket文件

配置文件中的[client] 和 [mysqld]     socket要保持一致

在删除重新安装数据库时,如果配置文件没有删,那么会生成一个叫myynew的文件,只需把之前的删除,把myynew改为 myy,CentOS 7在安装数据库时很有可能不会生成socket文件,重新启动数据库,可能在默认位置生成一个socket文件。socket文件绝对不能复制,出问题删除在生成

3

在centOS7中,安装后修改端口号,启动不成功可能是SELinux 的问题,安全的上下文,把他关了在重启就可以了

4 采用软连接的形式

ln -s [目标文件或目录] [链接名]

ln -s  /home/mysql/mysql.sock /tmp/mysql.sock

当tmp下没有sock文件的时候,采用软链接使用 /home/mysql/mysql.sock这个位置的sock文件