【问题标题】:How can I fix the MySQL 'access denied' errors after db restore?数据库恢复后如何修复 MySQL 的“访问被拒绝”错误?
【发布时间】:2019-07-23 17:59:35
【问题描述】:

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

【问题讨论】:

    标签: mysql access-denied


    【解决方案1】:

    你需要指定用户名和密码,你可以试试这个:

    mysql -u USERNAME -pPASSWORD -h HOSTNAMEORIP DATABASENAME 
    

    注意-p参数和密码之间不能有空格

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

    【讨论】:

    • 感谢您的回答。不幸的是,我得到了同样的错误。 $ mysql -u jag -pmypass -h 127.0.0.1 jag ERROR 1045 (28000): Access denied for user 'jag'@'localhost' (使用密码: YES)
    • 不幸的是我得到了同样的错误。 $ mysql -u jag -pmypass -h 127.0.0.1 jag ERROR 1045 (28000): Access denied for user 'jag'@'localhost' (using password: YES) 也许它没有正确导入密码?
    • 我发现了问题:应该重新启动 mysql 以便对新(导入)用户应用更改:$ sudo service mysql restart
    【解决方案2】:

    在对这个问题进行了所有类似的回答之后,我在 CentOS 中解决了这个问题: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

    【讨论】:

      猜你喜欢
      • 2013-07-10
      • 1970-01-01
      • 2022-07-19
      • 2020-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多