當遺失 MySQL root 密碼,或需在無密碼情況下緊急進入資料庫維護時。
killall -TERM mysqld
/usr/bin/mysqld_safe --skip-grant-tables &
注意:Red Hat 系統通常在 /usr/bin,Tarball 安裝則在 /usr/local/bin。
mysql -u root mysql
UPDATE user SET password=PASSWORD('new_pass') WHERE user='root';
FLUSH PRIVILEGES;
QUIT
killall -TERM mysqld
/etc/init.d/mysql start # 或系統對應啟動指令
PASSWORD() 函數加密,直接寫明文密碼會導致驗證失敗。FLUSH PRIVILEGES 強制重載授權表,否則修改不生效。mysql 系統資料庫。