您的位置:首页 > 编程语言 > PHP开发

忘记mysql密码,无法登陆phpMyAdmin; mysqladmin: connect to server at 'localhost' failed

2015-07-12 21:14 696 查看
一、mysql登录错误

mysqladmin: connect to server at 'localhost' failed

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

无法修改密码

用 service mysqld stop

mysqld_safe --skip-grant-tables &

输入 mysql -uroot -p 回车进入

>use mysql;

> update user set password=PASSWORD("newpass")where user="root";

更改密码为 newpassord

> flush privileges; 更新权限

> quit 退出

service mysqld restart

mysql -uroot -p新密码进入

===========================================================

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

解决过程:

1、编辑/etc/my.cnf

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

skip-grant-tables

2、保存后重启mysql

[root@localhost etc]# service mysqld restart

Shutting down MySQL. [ OK ]

Starting MySQL. [ OK ]

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

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

Enter password:

直接回车进入

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.1.47-log Source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| test |

+--------------------+

3 rows in set (0.00 sec)

执行下列语句

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> flush privileges;

Query OK, 0 rows affected (0.00 sec)

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

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

重启Mysql服务的时候,有可能会出现上述截图错误。那么我们需要打开activity monitor杀死mysqld进程即可。

打开之后,搜索mysqld,然后点击左上角的X即可。可能系统版本不同,相应操作也不同。请自行查找。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: