MySQL – 错误1045 – 访问被拒绝

以某种方式,当我尝试通过命令行访问MySQL时,我设法得到这个错误:

[root@localhost ~]# mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 

我已经尝试使用此HowTo重置密码没有任何运气。

我卸载了MySQL完成并重新安装,但我仍然被要求input密码。 我不知道为什么这样!

有人可以帮助我得到MySQL的默认安装。

环境

Fedora Core 10,完全root访问,Apache和PHP安装

感谢您的任何帮助!!

编辑

对于所有那些想节省几个小时“血液咳嗽”的人来说 – 当你卸载MySQl的时候,彻底删除掉所有留下的东西。 如果你不这样做,它将永远不会是一个新鲜的安装。

  • 访问被拒绝在MySQL中加载数据
  • 除root用户外,拒绝用户“test”@“localhost”(使用密码:YES)的访问
  • 尝试授予权限时,拒绝用户“root”@“localhost”的访问。 我如何授予特权?
  • 我如何恢复MySQL root用户的完整权限?
  • 无法使用mysql中创build的用户login
  • 在mac os上安装mysql
  • 拒绝用户“root @ localhost”的访问(使用密码:否)
  • 如何重置mysql root密码?
  • 7 Solutions collect form web for “MySQL – 错误1045 – 访问被拒绝”

    如果你实际上已经设置了一个root密码,你刚刚丢失/忘记了它:

    1. 停止MySQL
    2. 使用skip-grant-tables选项手动重新启动它: mysqld_safe --skip-grant-tables

    3. 现在,打开一个新的terminal窗口并运行MySQL客户端: mysql -u root

    4. 用这个MySQL命令手动重置root密码: UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; 如果您正在使用MySQL 5.7(在terminal中使用mysql –version进行检查),那么命令是:

       UPDATE mysql.user SET authentication_string=PASSWORD('password') WHERE User='root'; 
    5. 用这个MySQL命令刷新权限: FLUSH PRIVILEGES;

    http://www.tech-faq.com/reset-mysql-password.shtml

    (也许这不是你所需要的,Abs,但是我认为将来人们可能会对这个问题感到困惑)

    尝试连接没有任何密码:

     mysql -u root 

    我相信最初的默认是没有密码的帐户(显然应尽快更改)。

    使用此命令检查可能的输出

     mysql> select user,host,password from mysql.user; 

    产量

     mysql> select user,host,password from mysql.user; +-------+-----------------------+-------------------------------------------+ | user | host | password | +-------+-----------------------+-------------------------------------------+ | root | localhost | *8232A1298A49F710DBEE0B330C42EEC825D4190A | | root | localhost.localdomain | *8232A1298A49F710DBEE0B330C42EEC825D4190A | | root | 127.0.0.1 | *8232A1298A49F710DBEE0B330C42EEC825D4190A | | admin | localhost | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | | admin | % | | +-------+-----------------------+-------------------------------------------+ 5 rows in set (0.00 sec) 
    1. 在这个用户pipe理员将不被允许从另一个主机login,虽然你已经授予权限。 原因是用户pipe理没有被任何密码识别。
    2. 再次使用GRANT命令授予用户pipe理员密码

       mysql> GRANT ALL PRIVILEGE ON *.* TO 'admin'@'%' IDENTIFIED by 'password' 

    然后检查赠送名单出来会像他一样

     mysql> select user,host,password from mysql.user; +-------+-----------------------+-------------------------------------------+ | user | host | password | +-------+-----------------------+-------------------------------------------+ | root | localhost | *8232A1298A49F710DBEE0B330C42EEC825D4190A | | root | localhost.localdomain | *8232A1298A49F710DBEE0B330C42EEC825D4190A | | root | 127.0.0.1 | *8232A1298A49F710DBEE0B330C42EEC825D4190A | | admin | localhost | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | | admin | % | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | +-------+-----------------------+-------------------------------------------+ 5 rows in set (0.00 sec) 

    如果所需的用户(例如用户“admin”)需要被允许login,则使用一次GRANT命令并执行该命令。

    现在用户被允许login

    当前的root密码必须为空。 然后在“新的root密码”下input密码并确认。

    要在PHPMyAdmin中login,请尝试此解决方法PHPMyAdmin MySQL错误1045 – 拒绝用户root @ localhost访问(使用密码:否)

    1. 转到MySQL控制台
    2. input使用mysql;
    3. UPDATE mysql.user SET Password = PASSWORD('')WHERE User ='root'FLUSH PRIVILEGES; 退出密码('')必须为空
    4. 然后去wamp / apps / phpmyadmin ../ config.inc.php
    5. 查找$ cfg ['Servers'] ['$ I'] ['password'] ='root';
    6. 用['您的旧密码'replace['password']]
    7. 保存文件
    8. 重新启动所有的服务,并goto localhost / phpmyadmin

    我无法连接到MySqlpipe理员。 我通过创build另一个用户并分配所有权限来修复它。

    我用这个新用户login,它工作。