Article turned from: http://www.2cto.com/os/201104/86881.html
Here is the online method, I use the first method, tested effective.
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:
This method I have not been tested, because my root user default password has been modified by me, the person has time to test, the results told me, thank you!!
# mysql-uroot-p
Enter Password: < Enter the password provided in the [Client] section of the/etc/mysql/debian.cnf file >
Method Four:
The method is as follows: 1, turn off the MySQL service/etc/init.d/mysqld stop 2, start the MySQL service with the –skip-grant-tables option, you can modify the/etc/inin.d/mysqld script start location to increase this option, VI/ Etc/init.d/mysqld
Here's how:
1. Turn off MySQL service
/etc/init.d/mysqld stop
2, using the –skip-grant-tables option to start the MySQL service, you can modify the/etc/inin.d/mysqld script start location to increase this option,
Vi/etc/init.d/mysqld
Add--skip-grant-tables in the statement below to run the start
/usr/bin/mysqld_safe--skip-grant-tables--datadir= "$datadir"--socket= "$socketfile"
--log-error= "$errlogfile"--pid-file= "$mypidfile"
Joining--skip-grant-tables means skipping permission table authentication when starting the MySQL service. After booting, the root of the connection to MySQL does not require a password
3. Restart the MySQL service
/etc/init.d/mysqld start
4. Change the password of the root user;
mysql> Update Mysql.user set Password=password (123456) where user=root;
mysql> flush Privileges;
Mysql> quit
5. Restart MySQL to log in with the new password.
Mysql
Mysql-u root–p
Enter Password: 123456
6. Turn off MySQL service
/etc/init.d/mysqld stop
7, re-modify the 2nd step of the/etc/init.d/mysqld, so that it remains the same, that is, cancel the--skip-grant-tables statement
8. Restart the MySQL service
/etc/init.d/mysqld start