如何在数据库恢复后修复MySQL的“拒绝访问”错误?

时间:2013-07-05 11:25:51

标签: mysql access-denied

我通过以下方式导出了MySQL服务器的所有数据库:

    mysqldump -u root -p --all-databases > /tmp/dbs.sql

然后我将文件(通过scp)复制到另一台具有相同MySQL版本的服务器上,并将其导入:

    mysql -u root -p < dbs.sql

我只能以root身份访问MySQL。与其他用户一起,我获得了:

    ~$ mysql -u jag -p
    Enter password: 
    ERROR 1045 (28000): Access denied for user 'jag'@'localhost' (using password: YES)

但是,在mysql.user表中选择所有用户,我可以看到导入的所有用户帐户。那么,如何在不重置所有用户密码的情况下解决这个问题呢?

提前致谢。

2 个答案:

答案 0 :(得分:1)

您需要指定用户名和密码,您可以尝试:

mysql -u USERNAME -pPASSWORD -h HOSTNAMEORIP DATABASENAME 

请注意,-p参数和密码之间没有空格

您可以查看:http://dev.mysql.com/doc/refman/5.0/en/connecting.html

答案 1 :(得分:0)

在完成此问题的所有类似答案后,我已经在CentOS中解决了这个问题: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html