mysql用admin登录失败_MYSQL登录错误:mysqladmin: connect to server at 'localhost' failed

MYSQL登录错误:mysqladmin: connect to server at 'localhost' failed

1.mysql登录错误

mysqladmin: connect to server at 'localhost' failed

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

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

无法修改密码

用 service mysqld stop

输入 mysql -uroot -p 回车进入

输入原密码

> use mysql;

> update user set password=PASSWORD("long.com")where user="root";

> 更改密码为 long.com

> flush privileges; #更新权限

> quit 退出

service mysqld restart

mysql -uroot -p新密码进入

二,忘记本地root的登录密码

解决过程:

1、编辑/etc/my.cnf

在[mysqld] 配置部分添加一行

skip-grant-tables

2、保存后重启mysql

[root@web02 etc]# service mysqld restart

Shutting down MySQL. [ OK ]

Starting MySQL. [ OK ]

3、登录数据库重新设置root密码

[root@web02 ~]# mysql -uroot -p mysql

Enter password:

直接回车进入

执行下列语句

mysql> update user set password=password("mysql") where user='root';

Query OK, 4 rows affected (0.00 sec)

Rows matched: 4 Changed: 4 Warnings: 0

如果执行上一条报错如下:

mysql> update user set password=password("123") where user='root';

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

#错误的原因是 5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

则改用:

mysql> update mysql.user set authentication_string=password('123') where user='root';

Query OK, 1 row affected, 1 warning (0.02 sec)

Rows matched: 1 Changed: 1 Warnings: 1

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

4、删除/etc/my.cnf文件中添加的“skip-grant-tables”行,重启mysql;

用新设的密码就能正常登录了;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值