CentOS7 Mysql ERROR1045&1044解决

本文提供了一种解决CentOS下MySQL登录权限错误的方法。针对ERROR 1045(28000)的问题,介绍了如何通过停用MySQL服务、跳过权限表启动、更新用户密码并刷新权限等步骤来解决。同时给出了遇到其他错误时的解决思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错是1045 28000,

按着

http://wenku.baidu.com/link?url=tVHG_22CLTUf3hezZOovj_JpMAHZdDsrqyVlyuDgldATw2poYYywgPNlPrOajJJcp9NUI-pcZkoWuM5vvMhnD8yP2sSzzaVYbwyrSPndJqe

的第一个方法弄完,

CentOS命令登录MySQL时,报错ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)错误解决方法

1、停用mysql服务:# /etc/rc.d/init.d/mysqld stop

2、输入命令:
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

3、登入数据库:

# mysql -u root mysql

4、mysql> use mysql;

结果如下: Database changed
5、mysql> UPDATE user SET Password=PASSWORD('newpassword')where USER='newuser';

结果如下:
Query OK, 3 rows affected (0.00 sec)

Rows matched: 3 Changed: 3 Warnings: 0

mysql>FLUSH PRIVILEGES;

结果如下:
Query OK, 0 rows affected (0.00 sec)

mysql> quit

# /etc/init.d/mysql restart

# mysql -u newuser–p

Enter password:newpassword

但是又报错1044 42000,

因为用yum安装的mysql,mysqld_safe没有stop命令,使用mysqld命令关闭服务会提示没有在本机创建日志文件权限,所以给加上sudo,

然后又会提示查找帮助文档,以实现用root身份运行mysqld命令,如果在后面追加上--user=root,又会提示参数过多。

简单粗暴耐什么是我的风格,果断ps -aux | grep mysqld然后把所以显示出来的进程sudo kill掉,



http://www.linuxidc.com/Linux/2012-06/63618.htm

给的第二种方法解决!

1.关闭mysql
# service mysqld stop
2.屏蔽权限
# mysqld_safe --skip-grant-table
屏幕出现: Starting demo from .....
3.新开起一个终端输入
# mysql -u root mysql
mysql> delete from user where USER='';
mysql> FLUSH PRIVILEGES;//记得要这句话,否则如果关闭先前的终端,又会出现原来的错误
mysql> \q
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值