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 并重新安装了,但我仍然被要求输入密码。我不知道为什么会这样!

有人可以帮我获取默认安装的 MySQL。

环境

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

感谢您的帮助!!

编辑

致所有想为自己节省几个小时“咳血”的人——当您卸载 MySQl 时,会完全删除所有遗留下来的内容。如果您不这样做,它将永远不会是 FRESH 安装。

最佳答案

如果您确实设置了 root 密码并且您刚刚丢失/忘记了它:

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

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

  4. 使用以下 MySQL 命令手动重置 root 密码:UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; 如果您使用的是 MySQL 5.7(在终端中使用 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,但我认为它可能对将来遇到这个问题的人有用)

https://stackoverflow.com/questions/489119/

相关文章:

c++ - 谁决定任何数据类型或结构的大小(取决于 32 位或 64 位)?

linux - 如何让 tcpdump 写入文件和标准输出适当的数据?

linux - 在文件夹中的 gzip 文件中查找字符串

linux - 如何在没有任何用户配置的情况下启动 shell?

java - System.currentTimeMillis 是否总是返回一个值 >= 以前的调用

java - Ant 找不到 javac,在 Ubuntu 上不会设置 JAVA_HOME

linux - 为什么Linux设备驱动中除了init还需要probe方法?

linux - 如何在 Linux 中使用单行命令获取 Java 版本

c++ - 在 C、C++ 中检测 Windows 或 Linux

linux - 如何从 Linux 内核模块的 init_module 代码创 build 备节点?