MYSQL登錄錯誤:mysqladmin: connect to server at 'localhost' failed

一、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;

用新設的密碼就能正常登錄了;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章