天天看点

Linux下MySQL安装过程中的疑难杂症

表象问题可能如下:

① Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’;

② ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’;

③ The server quit without updating PID file (/home/mysql/dat[失败]zz.ha.cn.pid);

④Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’;

具体原因你应该去数据文件目录下查找​

​.err​

​​结尾的错误日志文件查看,如​

​iZ8vb3n2dl2w360w65xtf3Z.err​

​​。

Linux下MySQL安装过程中的疑难杂症

案例 一:服务器上面不存在mysql.sock(如果存在请看案例二的解决办法)。

① 修改my.cnf, 指定mysql.sock的路径:

[client]

port=3306
socket=/var/lib/mysql/mysql.sock
[mysql]

default-character-set=utf8

[mysqld]

port=3306
socket=/var/lib/mysql/mysql.sock      

② 重启提示如下:

Linux下MySQL安装过程中的疑难杂症
cat /home/mysql/data/pc0.zz.ha.cn.err      
Linux下MySQL安装过程中的疑难杂症

意思是硬盘没空间了。

③修改my.cnf ,将预先设置的空间分配减小,启动:

Linux下MySQL安装过程中的疑难杂症

奥 ,安装之后生成的临时密码过期了。

④ 密码过期修改办法:

案例二:服务器上存在/tmp/mysql.sock

解决办法:

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

案例三:用户权限问题

mysql路径如下:

--basedir=/usr/local/mysql 
 --datadir=/home/mysql/data      

赋予权限如下:

chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /home/mysql/data      

案例四:根盘空间满了

使用如下命令查看根分区:

df -h      

如果used 100%,则将根分区中的东西删除掉一些或者移动到别的分区。

案例五:swap分区为0

错误日志文件可能如下:

Linux下MySQL安装过程中的疑难杂症

这时使用​​

​free​

​命令查看,就会发现swap 为0。就需要添加swap空间。

Swap 是 Linux 下的交换分区,类似 Windows 的虚拟内存,当物理内存不足时,系统可把一些内存中不常用到的程序放入 Swap,解决物理内存不足的情况。但是如果开始使用 SWAP 的时候系统通常都会变得十分缓慢,因为硬盘 IO 占用的十分厉害,除非是 SSD 的情况下,速度才有可能稍微快一点。

① 创建一个名为 swapfile 的 1G 空文件(写 0 占用磁盘)

dd if=/dev/zero of=/swapfile bs=1024 count=1024000      

② 制作为 Swap 文件

mkswap /swapfile      

执行以上命令,将生成的 swapfile 制作为 SWAP 文件,若没有制作 SWAP 文件,执行下一步可能会出现:“swapon: vpppscom: read swap header failed: Invalid argument” 错误。

③ 让 Swap 文件生效

swapon /swapfile      

执行以上命令,使 “swapfile” 这个 Swap 文件生效,并叠加进当前 sawp 空间中。

④ 查看当前 SWAP

swapon -s      
Linux下MySQL安装过程中的疑难杂症

参考博客 :

继续阅读