3 回答
TA贡献1817条经验 获得超6个赞
对于这种错误; 您只需要以管理员身份为root用户设置新密码。请按照以下步骤操作:
[root ~]# mysql -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:NO)
停止运行mysql的服务/守护进程
[root ~]# service mysql stop
mysql stop/waiting
使用以下选项启动没有任何权限的mysql; 此选项用于启动,不使用MySQL的权限系统。
[root ~]# mysqld_safe --skip-grant-tables &
此时,终端似乎停了下来。那就是,并使用新的终端进行后续步骤。
进入mysql命令提示符
[root ~]# mysql -u root
mysql>
修复root用户的权限设置;
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)
退出shell并以正常模式重启mysql。
mysql> quit;
[root ~]# kill -KILL [PID of mysqld_safe]
[root ~]# kill -KILL [PID of mysqld]
[root ~]# service mysql start
现在,您可以使用您设置的密码以root用户身份成功登录
[root ~]# mysql -u root -pYourNewPassword
mysql>
TA贡献2080条经验 获得超4个赞
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;
设置$cfg['Servers'][$i]['AllowNoPassword']
为 false时,将解决错误“拒绝用户'root @ localhost'(使用密码:NO)”的错误
如果您私下更改了“root @ localhost”的密码,那么您必须做两件事来解决错误“访问权限用户'root @ localhost'”:
如果['password']有一个空引号,如'',那么将你的密码放在引号之间。
将(使用密码:NO)更改为(使用密码:YES)
这将解决错误。
注意:phpmyadmin是一个单独的工具,附带wamp。它只是为MySQL提供了一个接口。如果你更改我的sql root的密码,那么你应该更改phpmyadmin配置。通常phpmyadmin配置为root用户。
添加回答
举报