重置密码解决MySQL for Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

一般这个错误是由密码错误引起,解决的办法自然就是重置密码。

假设我们使用的是root账户。

1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

#vim /etc/my.cnf(注:windows下修改的是my.ini)

在文档内搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

保存文档并退出:

#:wq
2.接下来我们需要重启MySQL:

/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

3.重启之后输入#mysql即可进入mysql

4.接下来就是用sql来修改root的密码

mysql> use mysql;
mysql> update user set password=password("你的新密码") where user="root";
mysql> flush privileges;
mysql> quit

注意:

如果是MySql5.7  执行: mysql> update user set password=password("你的新密码") where user="root";  这一步会报错:如下:

ERROR 1054 (42S22): Unknown column ‘password‘ in ‘field list‘

原因:mysql5.7 没有password字段了,用authentication_string来代替

解决方法:将  update user set password=password("你的新密码") where user="root";  改为: update mysql.user set authentication_string=password(‘root‘) where user=‘root‘ ;即可

到这里root账户就已经重置成新的密码了。

5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!

网上有很多关于这个问题的解决说明,很多刚接触的朋友可能比较迷惑的是在自己的平台上找不到my.cnf或者my.ini文件,如果你是Linux,使用如下方式可以搜索到:

至于windows平台,去安装目录下找一下my.ini吧。

重置密码解决MySQL for Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

原文地址:https://www.cnblogs.com/shianliang/p/9502605.html

时间: 2024-12-07 02:53:10

重置密码解决MySQL for Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)的相关文章

Linux mysql 5.6: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

最近操作mysql 5.6, 出现了以下问题. 分享,感谢原著: 案例环境: 操作系统 :Red Hat Enterprise Linux Server release 5.7 (Tikanga) 64 bit 数据库版本 : Mysql 5.6.19 64 bit 案例介绍: 今 天开始学习mysql,遂先安装了Mysql 5.6.19 64bit 版本的数据库,结果安装成功了,但是使用root登录时遇到了ERROR 1045 (28000): Access denied for user '

Linux mysql 5.7: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

环境:mac10.12 来源:http://www.cnblogs.com/kerrycode/p/3861719.html 使用root登录时遇到了ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)错误. 如下所示 [[email protected] tmp]# rpm -ivh MySQL-server-5.6.19-1.rhel5.x86_64.rpm Preparing..

mac mysql连接报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

找了半天 又是kill进程,又是改设置文件,又是重启电脑,都不管用 翻到stackoverflow上的解决方案,实施成功: 原文链接:https://stackoverflow.com/questions/13480170/access-denied-for-mysql-error-1045 To restore it: Stop mysqld deamons. $ sudo service mysqld stop Go to mysql/bin directory $ cd /usr/bin

重置密码解决MySQL for Linux错误 ERROR 1045 (28000):

一般这个错误是由密码错误引起,解决的办法自然就是重置密码.假设我们使用的是root账户.1,停止mysql服务service mysqld stop2,找到my.cnf文件 3,修改配置文件无密码登录vi /etc/my.cnf在最尾部加上skip-grant-tables保存(:wq)4,启动mysqlsystemctl start mysqld.service mysqld start5,登录musqlmysql -u root此处注意不要加-p6,修改密码,mysql5.7用此语法use

mySQL报错:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)

一般这个错误是由密码错误引起,解决的办法自然就是重置密码. 假设我们使用的是root账户. 1.步骤一:跳过MySQL的密码认证过程#vim /etc/my.cnf(注:windows下修改的是my.ini) 在文档内搜索mysqld定位到[mysqld]文本段:/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容) 在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程 保存文档并退出:#:wq 2.步骤二:重启MySQL:/etc/init.

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)解决办法

问题重现(以下讨论范围仅限Windows环境): C:\AppServ\MySQL> mysql -u root -pEnter password:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 编辑mysql配置文件my.ini(不知道在哪请搜索),在[mysqld]这个条目下加入  skip-grant-tables保存退出后重启mysql 1.点击“开始”->“运行”(

解决mysql:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO/YES)

1 现象 mysql -u root -p 错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO/YES)2 linux系统: 在配置文件my-default.cnf或my.cnf下 [mysqld]下添加skip-grant-tables:因为此方法无效,所以找到了以下方法 为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error

MySQL出现 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决办法

进入cmd 输入 mysql -u root -p 出现ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 找到安装mysql的根目录打开 my.ini文件 添加一条语句 skip-grant-tables 保存后退出 进入cmd 输入net stop mysql; 停止mysql  然后在开启 net start mysql;  这步是修改完文件后重启一下 然后在 输入 mysq

Mac下解决mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Maybe updating the package the updater overwrote the root password. To restore it: Stop mysqld deamons. $ sudo service mysqld stop Go to mysql/bin directory $ cd /usr/bin Start a mysql deamon with this option: $ sudo mysqld_safe --skip-grant-tables O