XAMPP 安裝後 MySQL 預設 root 帳號密碼為空,這在開發環境雖然方便,但存在安全風險。本文詳細說明如何透過 phpMyAdmin 修改 MySQL 密碼,並同步更新 phpMyAdmin 設定檔,完成完整的密碼變更流程。
mysql 資料庫的 user 資料表修改 root 密碼phpMyAdmin/config.inc.php,更新連線密碼與驗證模式瀏覽器輸入 https://localhost/phpmyadmin 進入管理介面,選擇左側 mysql 資料庫,點擊 user 資料表。可以看到 root 帳號的 Password 欄位為空。

點選 root 帳號的「編輯」或「快速編輯」,在 Password 欄位選擇 PASSWORD 函數,輸入新密碼(例如 123456),執行儲存。或直接執行 SQL 指令:
UPDATE mysql.user SET Password=PASSWORD('new_password') WHERE User='root';
FLUSH PRIVILEGES;
執行後 root 密碼即已更新,phpMyAdmin 會要求重新登入。

修改資料庫密碼後,phpMyAdmin 仍使用舊設定(無密碼自動登入),需手動調整設定檔。找到 XAMPP 安裝目錄下的 phpMyAdmin/config.inc.php(例如 F:\xampp\phpMyAdmin\config.inc.php),尋找以下區塊:
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
修改為:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '123456'; // 填入剛設定的新密碼
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
重點說明:
auth_type 改為 cookie:改用表單登入,而非自動帶入帳密extension 建議改為 mysqli:支援較新 MySQL 版本AllowNoPassword 設為 false:禁止空密碼登入儲存設定檔後,重新整理 phpMyAdmin 頁面,將出現登入畫面。輸入 root 與新密碼即可正常進入,完成完整密碼變更流程。
config.inc.php 密碼是否與資料庫一致my.ini 的 [mysqld] 區段加入 skip-grant-tables 重啟服務跳過驗證,再重設密碼