登入 phpMyAdmin → 選擇 mysql 資料庫 → user 表 → 編輯 root 列 → Password 欄位選 PASSWORD() 函數輸入新密碼 → 執行。
mysqladmin -u root -p password 'newpass'
# 輸入舊密碼後完成修改
無法清空密碼,且需連線正常。
-- 5.7.6+ 推薦
ALTER USER 'root'@'%' IDENTIFIED BY 'newpass';
-- 或
SET PASSWORD FOR 'root'@'%' = 'newpass';
-- 5.7.6 前
UPDATE mysql.user SET authentication_string=PASSWORD('newpass') WHERE User='root';
FLUSH PRIVILEGES;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'newpass' WITH GRANT OPTION;
FLUSH PRIVILEGES;
net stop mysql (Win) / systemctl stop mysqld (Linux)。mysqld --skip-grant-tables --skip-networkingmysqld_safe --skip-grant-tables --skip-networking &mysql -u rootUSE mysql;
UPDATE user SET authentication_string=PASSWORD('newpass') WHERE User='root';
FLUSH PRIVILEGES;
mysqld --skip-grant-tables
mysqladmin -u root flush-privileges password ""
mysqladmin -u root -p shutdown # 提示輸入密碼時直接 Enter
chown -R mysql:mysql /var/lib/mysql/mysql/user.*
chmod 600 /var/lib/mysql/mysql/user.*
systemctl restart mysqld
DELETE FROM mysql.user WHERE User='';DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost','127.0.0.1','::1');mysql_secure_installation 互動式加固。