環境:Centos6.4X64,mysql5.5.11mysql
因誤操做使mysql的root密碼沒法登錄,在網上找到破解方法都是有不少錯誤或者遺漏。sql
經驗證以下步驟,特留存。數據庫
1.KILL掉系統裏的MySQL進程;
方法一:killall -TERM mysqld
方法二:kill進程號
ps:進程號能夠經過lsof -i或 ps aux|grep mysql查看ide
2.重建
mysql_install_db --user=mysql
3.用如下命令啓動MySQL,以不檢查權限的方式啓動;
mysqld_safe --skip -grant-tables&
此處可能出現相似以下錯誤提示,經過賦權安裝目錄下mysql/data目錄的權限給mysql用戶便可。ui
/usr/local/mysql5.5/bin/mysqld:File'./mysql-bin.index'notfound(Errcode:13)code
通常errcode13,就是權限問題,mysql用戶是否對數據庫目錄內的全部文件具備寫的權限,
將data目錄的有所者賦給mysql用戶便可。
chown mysql.mysql -R /data
好了,就沒有上面的報錯了。進程
4.而後用空密碼方式使用root用戶登陸MySQL;
MySQL -uroot
5.修改root用戶的密碼;ip
MySQL>use mysql;it
MySQL>update MySQL.user set password=PASSWORD('mysql2013') where user='root';
MySQL>flush privileges;
MySQL>quit
退出MySQL,從新登錄就須要新密碼登陸了。table