访问被拒绝的用户“根@本地”(使用密码:NO)访问被拒绝的用户“根@本地”(使用密码:NO)(Acc

2019-05-10 12:07发布

我新的MySQL的,我想在我的Windows桌面运行WordPress,它需要的MySQL。

我安装的一切Web Platform Installer是由微软提供。 我从来没有为MySQL设置一个根密码,并在安装WordPress的最后一步,它要求一个MySQL服务器的密码。

什么是根默认密码(如果有的话),以及如何改变呢?

我试过了:

mysql -u root password '123'

但它显示我:

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

在此之后我尝试:

mysql -u root -p

然而,它要求我没有密码。


更新 :作为Bozho建议,我做了以下内容:

  1. 我从Windows服务停止MySQL服务
  2. 打开CMD
  3. 地点变更为C:\ Program Files文件\ MySQL的\ BIN
  4. 下面执行命令

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

  5. 该命令与有关字符集的警告,我下面提到跑

  6. 我从Windows服务启动MySQL服务
  7. 我写在命令行

    mysql -u root -p EnterPassword: 123 // 123 was the password

  8. 命令行示出了下面的错误

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

我该如何解决这个问题? 我等待着听到您的意见。

Answer 1:

您可以重置root密码 。 有记住,最好不要使用root没有密码。



Answer 2:

对于这种类型的错误; 你只需要新密码设置为root用户为管理员。 遵循的步骤如下:

[root ~]# mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:NO)
  1. 停止运行MySQL的服务/守护

     [root ~]# service mysql stop mysql stop/waiting 
  2. 开始不使用下列选项任何特权MySQL的; 该选项用于启动和不使用MySQL的权限系统。

     [root ~]# mysqld_safe --skip-grant-tables & 

此时,终端将似乎停止 。 那一定是,用新终端的后续步骤。

  1. 输入MySQL命令提示

     [root ~]# mysql -u root mysql> 
  2. 固定根用户的权限设置;

     mysql> use mysql; Database changed mysql> select * from user; Empty set (0.00 sec) mysql> truncate table user; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.01 sec) mysql> grant all privileges on *.* to root@localhost identified by 'YourNewPassword' with grant option; Query OK, 0 rows affected (0.01 sec) 

*如果我想知道我的任何密码,或者更确切地说,一个空密码

    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)

确认的结果:

    mysql> select host, user from user;
+-----------+------+
| host      | user |
+-----------+------+
| localhost | root |
+-----------+------+
1 row in set (0.00 sec)
  1. 退出在正常模式下外壳和重启MySQL。

     mysql> quit; [root ~]# kill -KILL [PID of mysqld_safe] [root ~]# kill -KILL [PID of mysqld] [root ~]# service mysql start 
  2. 现在,您可以成功登录与您设置的密码,超级用户

      [root ~]# mysql -u root -pYourNewPassword mysql> 


Answer 3:

1)您可以通过调用MySQL的控制台设置root密码。 它位于

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

获取到该目录,然后输入MySQL的。 然后设置密码的方法如下..

    > SET PASSWORD FOR root@localhost = PASSWORD('new-password');

2)您可以通过编辑配置root用户WAMP的phpMyAdmin的应用

C:\wamp\apps\phpmyadmin3.3.9\config.inc.php 

注: -如果您使用的XAMPP然后,文件将位于

C:\xampp\phpMyadmin\config.inc.php

它看起来像这样:

        $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;

该错误“访问被拒绝的用户‘根@本地’(使用密码:NO)”当您设置将得到解决$cfg['Servers'][$i]['AllowNoPassword']

如果您对priviously“根@本地”改了密码,那么你必须做两件事情解决了错误“访问denided用户‘根@本地’”:

  1. 如果[“密码”]有一个空引号像'然后把引号之间的密码。
  2. 改变(使用密码:NO)至(使用密码:是)

这将解决该错误。

注意:phpMyAdmin是一个独立的工具,它自带的WAMP。 它只是提供了一个接口到MySQL。 如果你改变我的SQL root的密码,那么你应该更改phpMyAdmin的配置。 一般的phpmyadmin被配置为根用户。



Answer 4:

我是越来越OS X上的El队长同样的错误。 MySQL版本5.7。 我能够执行这些步骤后根连接到MySQL。

停止MySQL服务器

sudo mysql.server stop

以安全模式启动mysql的

sudo mysqld_safe --skip-grant-tables

使用mysqld的,更改数据库MySQL,而且更新的细节为用户“根”。

show databases;
use mysql;
UPDATE mysql.user 
    SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N'
    WHERE User = 'root' AND Host = 'localhost';
exit;

之后杀“mysqld_safe的”过程和正常启动mysql。 您应该能够登录使用的根和新密码到MySQL。 有关详细信息,SQL文档



Answer 5:

确保MySQL服务是您的机器上运行,然后按照从MySQL中的说明最初设置根(搜索“窗口”,它会带你到步骤设置root权限):

http://dev.mysql.com/doc/refman/5.1/en/default-privileges.html



Answer 6:

对于MySQL 5.7。 这是下面的步骤:

完全停止MySQL服务器。 这可以通过访问Windows XP和Windows Server 2003,在那里你可以停止MySQL服务中的服务窗口来完成。

使用Run窗口内“CMD”打开MS-DOS命令提示符。 它里面浏览到你的MySQL bin文件夹,如C:使用cd命令\ MySQL的\ bin中。

在命令提示执行以下命令:mysqld.exe -u根--skip发放桌

离开当前MS-DOS命令提示,因为它是,并打开一个新的MS-DOS命令提示窗口。

导航到你的MySQL bin文件夹,如C:使用cd命令\ MySQL的\ bin中。

输入mysql的,然后按回车。

你现在应该有MySQL命令提示符工作。 类型用mysql; 让我们切换到“MySQL的”数据库。

执行以下命令来更新密码:

更新用户设置authentication_string =密码(“1111”),其中用户=“根”;



Answer 7:

如果有人获得误差为用户帐户“根”指定密码另一种解决方案是无效的,或未能还与正确的密码连接到数据库服务器 ,为后续

•在Windows注册表,删除其下的HKCU \ SOFTWARE \ Microsoft提供的MYSQL_PWD REG键\ WebPlatformInstaller

•反安装旧版本的MySQL .NET连接器

•下载并安装最新的MySQL .NET连接器 。



Answer 8:

在您的代码与您的服务器密码您的服务器的用户名和密码替换“根”。 例如,如果您有数据库和服务器上的PHP文件http://www.example.com那么显然,你就必须进入使用用户名和密码,该服务器站点。



Answer 9:

只需编辑my.ini在C文件:\ XAMPP \ mysql的\ bin路径。 只需添加:

skip-grant-tables

线的线之间# The MySQL server [mysqld]port=3306 。 然后,重新启动MySQL服务器。

好像:



Answer 10:

如果您使用的XAMPP只要进入C:\xampp\phpMyAdmin ,然后打开config.inc.php找到$cfg['Servers'][$i]['password'] = ''行,把你的密码存在。



Answer 11:

有些时候,它只是碰巧由于安装WAMP的或root用户的密码选项改变。 人们可以使用的privilages - >根(用户),然后设置密码选项设置为NO没有任何密码运行的东西或设置密码,并在应用中使用它。



Answer 12:

mysqladmin -u root -p password

输入您的current password

然后

输入您的new password



文章来源: Access denied for user 'root@localhost' (using password:NO)