MySQL 更換 root 密碼
忘記 MySQL root 的密碼 ? 無法進入 MySQL ? 先不用急著重新安裝 MySQL,其實只需要重新設定 root 的密碼就可以了
使用情境
- 忘記密碼
- 安裝 MySQL 時忘記設定密碼
$ mysql -p
無法進入 MySQL 的介面ERROR 1045 (28000): Access denied for user 'root'@'localhost'
- 關鍵字搜尋:how to reset MySQL root password
重設密碼
- 關閉 MySQL
- 啟用 mysqld_save
- 進入 MySQL
- 更新 root 密碼
- 刷新 MySQL 系統相關權限表
- 重啟 MySQL
1. 關閉 MySQL
service mysql stop
2. 啟用 mysqld_save
mysqld_safe --skip-grant-tables &
如果出現 UNIX socket file don't exists
相關錯誤了話,需要手動建立 mysqld
的資料夾目錄:
mkdir -p /var/run/mysqld
chown mysql:mysql /var/run/mysqld
3. 進入 MySQL
mysql
4. 更新 root 密碼
MySQL version < 5.7
update user set password=PASSWORD("newpassword") where User='root';
MySQL version >= 5.7
update user set authentication_string=password('mynewpassword') where user='root';
5. 刷新 MySql 系統相關權限表
flush privileges
6. 重啟 MySQL
mysqladmin -u root -p shutdown