关于自动备份mysql时连接mysql出现2002错误的解决办法

今天在写vps自动备份网站资料时的一个shell脚本时,在测试过程中出现mysql的错误!

root@fyhqy:/home# /usr/local/mysql/bin/mysqldump -uroot -p34876QW --lock-all-tables --all-databases > backup.sql
mysqldump: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) when trying to connect

如果出现这个的原因是mysql的缓冲目录和mysql链接时使用的不是同一个。从而会提示连接错误! 解决办法:

root@fyhqy:/home# netstat -ln | grep mysql   ##使用这个命令查找mysql的sock目录
unix  2      [ ACC ]     STREAM     LISTENING     2935     /tmp/mysql.sock ##这是我这里的目录

然后在使用mysql命令是后面跟上socket的参数就可以成功解决了

/usr/local/mysql/bin/mysqldump -uroot -p34876QW --lock-all-tables --all-databases --socket=/tmp/mysql.sock > backup.sql

看一下是否已经成功备份下来了!  

发表新评论