Access denied for user '[email protected]' (using password:NO)问题的解决

错误详情

使用pymysql连接数据库mysql,一直无法连接上,

conn = pymysql.connect(host=‘localhost‘, port=3306, user=‘root‘, passwd=‘1234‘, db=‘test‘, charset=‘utf8‘)

原因是自己的mysql没有密码,即root进入直接enter就可以进入数据库,但这样的数据库在使用其他连接可能都会出现这种问题,所以解决问题的第一步就是给root设置一个密码。

步骤如下:

[root ~]# mysql -u root
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password:NO)

1.停止mysql服务

[root ~]# net stop mysql

2.在没有任何特权的情况下启动mysql:

首先找到mysql安装路径,找到my.ini文件,在该文件末尾加上skip-grant-tables

然后启动mysql服务

[root ~]# net start mysql

3.输入mysql命令符

[root ~]# mysql -u root
mysql>

4.修复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 [email protected] identified by ‘YourNewPassword‘ with grant option;
Query OK, 0 rows affected (0.01 sec)

确认结果:

    mysql> select host, user from user;
+-----------+------+
| host      | user |
+-----------+------+
| localhost | root |
+-----------+------+
1 row in set (0.00 sec)

5.退出外壳程序并以正常模式重启mysql

mysql> quit;
[root ~]# kill -KILL [PID of mysqld_safe]
[root ~]# kill -KILL [PID of mysqld]
[root ~]# service mysql start

6.现在,可以使用设置的密码以root用户身份成功登录

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

  

Access denied for user '[email protected]' (using password:NO)问题的解决

原文地址:https://www.cnblogs.com/AIchangetheworld/p/11726383.html

时间: 2024-09-29 17:57:57

Access denied for user '[email protected]' (using password:NO)问题的解决的相关文章

【转载】 ERROR 1045 (28000): Access denied for user [email protected] (using password: NO)

来自:http://www.jb51.net/LINUXjishu/10981.html 错误描述: Mysql中添加用户之后可能出现登录时提示ERROR 1045 (28000): Access denied for user的错误.删除user.user中值为NULL的,或更新NULL为test 1)delete from user where user is NULL 2)update user set user='test' where user is NULL.意外的情况: 如果上述方

Access denied for user: '[email protected]' (Using password: YES)

centos 安装mysql成功后 首次使用root登录发生:Access denied for user: '[email protected]' (Using password: YES) 原因是mysql初始db中的mysql库user表中root密码为空 因此你需要修改root密码 首先执行:mysql -u root 进入mysql 库命令行 然后进入mysql库:use mysql; 进入后再执行修改密码即可:update user set password=password('aa

安装mysql因为/tmp权限不足而导致ERROR 1045 (28000): Access denied for user [email protected] (using password: NO)的解决方案

本机是centos 6.5  安装的mysql是5.1的版本. 在安装mysql之后,第一次启动mysql服务的时候,需要/tmp有777(rwxrwxrwx)的权限,然而楼主的/tmp是755(rwxr-xr-x)的,[其实默认的是777,我因为之前误删过tmp,然后自己建的tmp,而权限没跟着改,小白的悲伤,说多了都是泪= =]所以如果不知道这个坑的话,第一次基本会出错.这个时候再修改/tmp已经迟了, 所以只能重新安装mysql了 由于上述原因报的错误是:ERROR 1045 (28000

mysql启动提示 access denied for user [email protected](using password:YES)

问题:遇到mysql启动提示 access denied for user [email protected](using password:YES) 1.检查密码有无错误,如果无就是权限问题. 2.打开SQL的图形工具,输入以下命令行 grant all privileges on *.* to 'root'@'localhost' identified by '你的密码' with grant option; flush privileges; 3.在本地环境运行没有问题,如有异常,请留下评

ERROR 1045 (28000): Access denied for user [email protected] (using password: YES)解决办法

出现1045这个问题可以通过修改密码来解决,以下是无法登录的情况下修改密码: 在dos下进入mysql的bin目录,输入mysql -uroot -p然后输入密码还是会出现1045的错误,如下图 解决办法: 1,不要-p登录 2,执行update语句修改密码 UPDATE mysql.user SET Password=PASSWORD('新密码') where USER='root' and HOST="localhost"; 3,mysql> FLUSH PRIVILEGES

mysql Access denied for user [email protected]错误解决方法总结(转)

mysql Access denied for user [email protected]错误解决方法总结(转) mysql Access denied for user \'root\'@\'localhost\'”解决办法总结,下面我们对常见的出现的一些错误代码进行分析并给出解决办法,有需要的朋友可参考一下. 错误代码 1045 Access denied for user 'root'@'localhost' (using password:YES) 解决办法是重新设置root用户密码,

MySQL Access denied for user [email protected] 解决方法

今天把本地开发的项目(ThinkPHP 3.2.3)移到虚拟机上(CentOS 6.6,LNMP 1.2,MySQL 5.6.23),配置好 MySQL 之后访问首页,出现: 此时 MySQL 的用户名和密码都是 root 解决方法是: # /etc/init.d/mysql stop # mysqld_safe --user=mysql --skip-grant-tables --skip-networking & # mysql -u root mysql mysql> UPDATE u

1698 -Access denied for user '[email protected]'

grant all privileges on *.* to user@'localhost' Identified by 'password' WITH GRANT OPTION; grant all privileges on *.* to root@'%' Identified by 'password' WITH GRANT OPTION; 予任何主机访问数据的权限 3.MySQL>FLUSH PRIVILEGES 修改生效 4.MySQL>EXIT 退出MySQL服务器 1698 -

mysql链接报错1045:Access denied for user [email protected]解决方法

安装了mysql5,本地连接没有问题,但是通过局域网的其他电脑连接报错1045:Access denied for user [email protected] 网上搜索到的解决方法(亲测可以解决上述问题): 一:停止MySQL服务 在mysql的安装目录,输入命令net stop mysql    二:跳过验证 在my.ini里面68行(随便选位置)添加    skip_grant_tables 然后保存关闭 三:重启mysql并登陆mysql 命令:net start mysql(启动) m