mysqldump got error:2002 及got error:1045错误解决方案

在执行mysqldump命令的过程中,有时候会碰到如下的错误:

peter@dev:~> mysqldump -uroot  -p chmopdb > mop.sql   
mysqldump: Got error: 2002: Can't connect to local MySQL server through socket'/tmp/mysql.sock' (2) when trying to connect

说明命令默认使用连接mysql的unix套接字错误,先要找出套接字的路径:

peter@dev:~> netstat -ln | grep chmopdb
unix  2      [ ACC ]     STREAM     LISTENING     81195 etc/mysock/chmopdb.sock

然后使用–socket选项指定连接数据库时的套接字。

peter@dev:~> mysqldump --socket=/etc/mysock/chmopdb.sock -uroot -p chmopdb > mop.sql

此时在输入密码之后有可能会出现

Got error: 1045: Access denied for user 'root'@'localhost

此时需要改变用户登录时输入密码的方式:

peter@dev:~> mysqldump --socket=/etc/mysock/chmopdb.sock -uroot -p"password" chmopdb > mop.sql

将密码以明文的方式输入,记得密码要用双引号括住。

你可能感兴趣的:(数据库)