一、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 mysqlEnter password:
#直接回车进入
Welcome to the MySQL monitor.  Commands end with ;
or \g.Your MySQL connection id is 1 
Server version: 5.1.47-log Source distributionCopyright (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 licenseType '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;

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