Mysql设置初始密码

刚安装或者遗忘Mysql时,如何重置Mysql密码呢!
这个我们用到

mysqld_safe --skip-grant-tables &

顾名思义,就是在启动mysql时不启动grant-tables,授权表,这样,我们就能在不通过登录验证的情况下,登录Mysql进而重置密码。
在使用这个命令之前,我们必须关闭正在运行Mysql服务:

service mysqld stop

停止服务以后,即可通过mysqld_safe来重新启用mysql

/usr/bin/mysqld_safe --skip-grant-tables &

如果提示mysqld_safe找不到,可以通过

whereis mysqld_safe

来进行查找.

以上命令中 & 表示在后台运行,但有时可能mysql并没有转到后台,此时可以通过 CTRL+C退出
然后再次登录,无需输入密码:

$mysql -uroot
>use msyql;
mysql>update user set password=password('123456') where user='root';
mysql>flush privileges;
mysql>exit;

然后重新启动Mysql,在登录Mysql后,需要重新设置一次密码

>SET PASSWORD = PASSWORD('123456');