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

3

我通过以下方式导出了一个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表中选择所有用户,我可以看到导入了所有用户帐户。那么,我如何在不重置所有用户密码的情况下解决这个问题?

3个回答

3

感谢您的回答。不幸的是,我得到了相同的错误。 $ mysql -u jag -pmypass -h 127.0.0.1 jag ERROR 1045 (28000): 用户'jag'@'localhost'被拒绝访问(使用密码:是) - Oscar
1
不幸的是,我得到了相同的错误。 $ mysql -u jag -pmypass -h 127.0.0.1 jag ERROR 1045 (28000): Access denied for user 'jag'@'localhost' (using password: YES)也许它没有正确导入密码? - Oscar
4
我发现了问题:为了应用新添加的用户更改,需要重新启动mysql:$ sudo service mysql restart - Oscar

0

-1
请确保授予要恢复的用户(在本例中为“jag”)所需的特权。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接