'访问被拒绝用户'root'@'localhost'(使用密码:NO)'

时间:2011-12-16 17:00:33

标签: mysql

我正在尝试设置用户root的密码,但我知道下面的错误,有什么想法吗?

+----------------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@localhost                                                                                                              |
+----------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*436576511F70A4E3B305E1AB8E209851945D8687' WITH GRANT OPTION |
+----------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)


mysql> exit
Bye
root@tirengarfio:/var/www/rs2# mysqladmin -u root password foo,
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'

7 个答案:

答案 0 :(得分:42)

$ mysqladmin -u root -p password
Enter password: 
New password: 
Confirm new password:

password将按字面输入。这是一个命令。您无需使用实际密码替换password

答案 1 :(得分:37)

# /etc/init.d/mysqld stop

Stopping MySQL: [ OK ]

# mysqld_safe --skip-grant-tables &

[1] 13694

# Starting mysqld daemon with databases from /var/lib/mysql



# mysql -u root

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.0.77 Source distribution



Type 'help;' or '\h' for help. Type '\c' to clear the buffer.



mysql>

答案 2 :(得分:7)

设置/更改密码:

mysqladmin -u root -p password

登录MySQL控制台:

mysql -u root -p

退出控制台:

.\q

答案 3 :(得分:2)

这些都是很好的答案,但如果遇到OP问题,请不要触及问题的深层原因。也就是说,不知道ORIGINAL"开始"在安装期间创建的密码。

所有这些命令行都带有" -u root ..."等意味着知道并使用该密码。

现在,原始安装消息中的这一部分可以帮助任何面临上述问题的人:

首次使用MySQL的初始密码保存在$ HOME / .mysql_secret中 即。 当你想使用" mysql -u root -p"首先你应该看到密码
在/root/.mysql_secret

答案 4 :(得分:1)

尝试运行此命令时出现同样的错误

sudo mysqladmin create asteriskcdrdba

我只需在代码中添加几行

-u root -p

并按下回车键。我输入了密码然后按回车键。 Linux喜欢我的命令,因为没有显示更多

所以也许试试

sudo <your command here> -u <username> -p

点击后输入并输入密码

答案 5 :(得分:1)

这基本上是以前答案的更详细版本。

在终端中,转到实用程序的位置 mysqladmin

例如,如果您正在进行本地开发并使用M / W / XAMP之类的应用程序,则可以转到目录:

/应用/ MAMP /库/ bin中

这是mysqladmin所在的地方。

如果您没有使用像MAMP这样的应用程序,您也可以在以下位置找到本地安装的mysql:/ usr / local / mysql

然后如果你去:/ usr / local / mysql / bin /

您位于mysqladmin所在的目录中。

然后,要更改密码,您将执行以下操作:

  1. 在您的终端提示下,输入下面的完全命令(也称为复制和粘贴),然后按输入。密码&#34;密码&#34;是命令的一部分,所以不要混淆并得出结论,你需要用你之前创建或希望将来使用的密码替换这个词。您将有机会尽快输入新密码,但是您不会在第一个命令中执行此操作:

    ./ mysqladmin -u root -p password

  2. 终端会要求您输入原始密码或初始密码,而不是新密码 。从您提供的上图中看,您已经创建了一个,请在此处输入:

  3. Enter password: oldpassword

    1. 终端会要求您输入新密码。在此输入,然后按输入
    2. New password: newpassword

      1. 然后终端会要求您确认新密码。在此输入,然后按输入
      2. Confirm new password: newpassword

        重置或重启终端。

        在某些情况下,与M / W / XAMP一样,您必须在各种文件中更新此新密码才能使应用程序再次正常运行。

答案 6 :(得分:-3)

  • 使用以下路径打开my.cnf
  

C:\ XAMPP \ MySQL的\ BIN

  • under #以下选项将传递给所有MySQL客户端 #password删除#评论标记password = "newpassword"

  • 保存文件

  • 关闭文件

  • 重新启动mysql