1. 程式人生 > >reset MySQL 5.7 root password in Ubuntu 18.04

reset MySQL 5.7 root password in Ubuntu 18.04

我在Ubuntu下安裝MySQL 5.7,過程中並沒有提供設定MySQL密碼的提示,故採用安全模式重設密碼的方式,記錄以供自己日後使用。


1.停止MySQL服務
$ sudo service mysql stop
2.建立服務所需目錄並修改許可權
$ sudo mkdir /var/run/mysqld && sudo chown mysql: /var/run/mysqld
3.開啟安全模式(--skip-networking選項避免遠端無密碼登入MySQL)
$ sudo mysqld_safe --skip-grant-tables --skip-networking &
4.免密碼登入MySQL並使用mysql資料庫
$ mysql -u root mysql
5.重設密碼(參考文章Host用%無法使用)
mysql> UPDATE mysql.user SET authentication_string=PASSWORD('YourNewPassword'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';
6.退出MySQL
mysql> quit
7.關閉安全模式(重要!!略過這步會無法正常開啟MySQL)
$ sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown
8.重啟正常模式的MySQL服務
$ sudo service mysql start
9.安心享用MySQL吧(按下Enter後會詢問MySQL密碼)
$ mysql -u root -p


參考文章
http://www.ghostchina.com/how-to-reset-mysqls-root-password/
https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-root-password-in-ubuntu-16-04-lts