From: http://www.jb51.net/LINUXjishu/10981.html
Error description: After adding a user in MySQL, you may be prompted with error 1045 (28000): Access denied for user errors. Delete the value NULL in User.user, or update null to test 1) Delete from User where user is null 2) update the user set user= ' test ' where user is NULL. Unexpected situation: If the above method is not effective, there will still be empty users, you can take advantage of the graphical user client delete.
After reloading the CentOS, I found that MySQL has been a bad use.
# mysqladmin Create dbname command always returns mysqladmin:connect to server at ' localhost ' failed
# Mysql-u[email protected]
>create database dbname;
Also returns error 1045 (28000): Access denied for user ' root ' @ ' localhost ' (using Password:no)
# mysql-u Root-p
Enter Password:
ERROR 1045 (28000): Access denied for user ' root ' @ ' localhost ' (using Password:no)
Use the Web-based method to modify the root user's password:
# mysqladmin-uroot-p password ' newpassword '
Enter Password:
Mysqladmin:connect to server at ' localhost ' failed
Error: ' Access denied for user ' root ' @ ' localhost ' (using Password:yes) '
Now I finally found the solution, as follows (my own test, all feasible):
Method One:
#/etc/init.d/mysql Stop
# Mysqld_safe--user=mysql--skip-grant-tables--skip-networking &
# mysql-u Root MySQL
mysql> UPDATE user SET Password=password (' NewPassword ') where user= ' root ';
mysql> FLUSH privileges;
Mysql> quit
#/etc/init.d/mysql Restart
# mysql-uroot-p
Enter Password: < Enter the newly set password newpassword>
Mysql>
Method Two:
Use the user name and password provided directly in the [client] section of the/etc/mysql/debian.cnf file:
# mysql-udebian-sys-maint-p
Enter Password: < Enter the password for the [client] section >
mysql> UPDATE user SET Password=password (' NewPassword ') where user= ' root ';
mysql> FLUSH privileges;
Mysql> quit
# mysql-uroot-p
Enter Password: < Enter the newly set password newpassword>
Mysql>
Method Three:
# mysql-uroot-p
Enter Password: < Enter the password provided in the [Client] section of the/etc/mysql/debian.cnf file >