一、在windows下:

打开命令行窗口,停止mysql服务:Net stop mysql

启动mysql,一般到mysql的安装路径,找到mysqld-nt.exe
执行:mysqld-nt --skip-grant-tables

另外打开一个命令行窗口,执行mysql:
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
>exit

用Ctrl+Alt+Del,找到mysqld-nt的进程杀掉它,再重新启动mysql-nt服务,就可以用新密码登录了。

二、在linux下:

如果MySQL正在运行,首先杀之:killall -TERM mysqld

启动MySQL:bin/safe_mysqld --skip-grant-tables &

就可以不需要密码就进入MySQL了;

然后就是:
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;