如何重設 MySQL 的 root 密碼

MySQL下建立新用戶、新數據庫、設定訪問權限控制都須要用到root密碼。萬一把root密碼忘了,該怎麼辦?mysql

幸運地是,重設密碼很容易。sql

注意:MySQL的root用戶和服務器操做系統的root用戶是兩個不一樣的用戶,不要搞混了。數據庫

安全模式重置法

基本的思路是,以安全模式啓動mysql,這樣不須要密碼能夠直接以root身份登陸,而後重設密碼。安全

首先,咱們停掉MySQL服務:服務器

sudo service mysql stop

以上命令適用於Ubuntu和Debian。CentOS、Fedora和RHEL下使用mysqld替換mysql。ui

以安全模式啓動MySQL:spa

sudo mysqld_safe --skip-grant-tables --skip-networking &

注意咱們加了--skip-networking,避免遠程無密碼登陸 MySQL。操作系統

這樣咱們就能夠直接用root登陸,無需密碼:rest

mysql -u root

接着重設密碼:code

mysql> use mysql;  
mysql> update user set password=PASSWORD("mynewpassword") where User='root';  
mysql> flush privileges;

注意,命令後須要加分號。

重設完畢後,咱們退出,而後啓動 MySQL 服務:

mysql > quit

quit不須要分號。

重啓服務:

sudo service mysql restart

一樣,以上命令適用於Ubuntu和Debian,Centos、Fedora和RHEL須要用mysqld替換mysql

如今能夠嘗試用新密碼登陸了:

mysql -u root -pmynewpassword

注意,-p 和密碼間不能有空格。

相關文章
相關標籤/搜索