首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >拒绝访问用户'root@localhost‘(使用密码:NO)

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

Stack Overflow用户
提问于 2010-06-08 13:53:09
回答 18查看 912.5K关注 0票数 162

我是MySQL的新手,我正尝试在我的桌面上运行WordPress,它需要MySQL。

我用微软提供的Web Platform Installer来安装所有的东西。我从未为MySQL设置根密码,在安装WordPress的最后一步,它要求输入MySQL服务器密码。

root的默认密码是什么(如果有),以及如何更改它?

我试过了:

代码语言:javascript
复制
mysql -u root password '123'

但它告诉我:

代码语言:javascript
复制
Access denied for user 'root@localhost' (using password:NO)

在此之后,我尝试:

代码语言:javascript
复制
mysql -u root -p

但是,它要求输入我没有的密码。

更新:按照Bozho的建议,我做了以下操作:

通过MySQL services

  • Opened CMD
  1. 我停止了MySQL服务
  2. 将位置更改为c:\program files\mysql\bin
  3. Executed以下命令

mysqld --defaults-file="C:\\program files\\mysql\\mysql server 5.1\\my.ini" --init-files=C:\\root.txt

  • The命令运行时出现以下有关字符集的警告:

  • I start the MySQL service from Windows services

  • I write in the command line

EnterPassword: 123 // 123 was the password

  • The mysql -u root -p命令行显示以下错误

Access denied for user 'root@localhost' (using password:**YES**)

我该如何解决这个问题?我在等你的消息。

EN

回答 18

Stack Overflow用户

回答已采纳

发布于 2010-06-08 13:54:56

你可以使用reset your root password。请记住,不建议使用没有密码的root用户。

票数 62
EN

Stack Overflow用户

发布于 2014-05-29 10:37:11

对于这种错误,您只需将新密码设置为管理员身份的root用户即可。请按照以下步骤操作:

代码语言:javascript
复制
[root ~]# mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:NO)

  1. 停止MySQL运行的服务/守护进程根~#服务mysql停止mysql boot mysql没有任何权限的mysql使用以下选项;该选项用于启动,不使用MySQL的特权系统。

根授权表-- ~# - mysqld_safe -

此时,终端似乎会停止。就这样吧,在接下来的步骤中使用新终端。

  1. 进入mysql命令提示符of ~# mysql -u根mysql>
  2. 修复根用户的权限设置;

mysql>使用mysql;数据库已更改mysql> select * from user;空集(0.00秒) mysql> truncate table user;Query OK,0行受影响(0.00秒) mysql>刷新权限;Query OK,0行受影响(0.01秒) mysql>将所有权限授予*.* to root@localhost,由'YourNewPassword‘标识,带grant选项;查询OK,0行受影响(0.01秒)

*如果您不需要任何密码,或者更确切地说是一个空密码

代码语言:javascript
复制
    mysql> grant all privileges on *.* to root@localhost identified by '' with grant option;
    Query OK, 0 rows affected (0.01 sec)*
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

确认结果:

代码语言:javascript
复制
    mysql> select host, user from user;
+-----------+------+
| host      | user |
+-----------+------+
| localhost | root |
+-----------+------+
1 row in set (0.00 sec)

  1. 退出外壳,并在正常模式下重启mysql。

mysql>退出;根用户~# kill -KILL mysqld_safe#的PID kill -KILL mysqld#服务的PID mysql启动

  • 现在您可以使用您设置的密码以根用户的身份成功登录

root ~# mysql -u root -pYourNewPassword mysql>

票数 99
EN

Stack Overflow用户

发布于 2012-12-25 16:35:57

1)您可以通过调用MySQL控制台来设置超级用户密码。它位于

默认情况下为C:\wamp\bin\mysql\mysql5.1.53\bin

进入目录并输入MySQL。然后按如下方式设置密码。

代码语言:javascript
复制
    > SET PASSWORD FOR root@localhost = PASSWORD('new-password');

2)您可以通过编辑来为root用户配置wamp的phpmyadmin应用程序

代码语言:javascript
复制
C:\wamp\apps\phpmyadmin3.3.9\config.inc.php 

注意:-如果您使用的是xampp,那么文件将位于

代码语言:javascript
复制
C:\xampp\phpMyadmin\config.inc.php

它看起来是这样的:

代码语言:javascript
复制
        $cfg['Servers'][$i]['verbose'] = 'localhost';
        $cfg['Servers'][$i]['host'] = 'localhost';
        $cfg['Servers'][$i]['port'] = '';
        $cfg['Servers'][$i]['socket'] = '';
        $cfg['Servers'][$i]['connect_type'] = 'tcp';
        $cfg['Servers'][$i]['extension'] = 'mysqli';
        $cfg['Servers'][$i]['auth_type'] = 'config';
        $cfg['Servers'][$i]['user'] = 'root';
        $cfg['Servers'][$i]['password'] = 'YOURPASSWORD';
        $cfg['Servers'][$i]['AllowNoPassword'] = false;

当您将$cfg['Servers'][$i]['AllowNoPassword']设置为false时,将解决错误“用户'root@localhost‘的访问被拒绝(使用密码:NO)”

如果您之前更改了'root@localhost‘的密码,那么您必须做两件事来解决错误"Access denided for user 'root@localhost'":

使用密码如果‘

  • ’有一个空引号,如使用密码‘',则将您的密码放在(使用密码:NO)和(使用password:YES)

)之间

这将解决错误。

注意: phpmyadmin是wamp附带的一个单独的工具。它只提供了一个到MySQL接口。如果您更改了我的sql root的密码,那么您应该更改phpmyadmin配置。通常,phpmyadmin被配置为root用户。

票数 24
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2995054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档