首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 與 phpMyAdmin 密碼同步修改的兩種實用方案

     編輯:MySQL 資料庫相關知識

場景說明

修改 MySQL root 密碼後,phpMyAdmin 因配置檔仍存舊密碼而無法登入。本文提供兩種同步修改方案,任選其一即可。

方案一:命令列直連 MySQL 修改(推薦,無需圖形介面)

步驟 1:登入 MySQL 並選擇 mysql 系統庫

mysql -u root -p
mysql> USE mysql;

步驟 2:更新 user 表密碼(MySQL 5.7+ 使用 authentication_string)

-- MySQL 5.7 / 8.0
UPDATE user SET authentication_string = PASSWORD('新密碼') WHERE User = 'root';

-- MySQL 5.6 及以下
UPDATE user SET Password = PASSWORD('新密碼') WHERE User = 'root';

步驟 3:刷新權限生效

FLUSH PRIVILEGES;

步驟 4:修改 phpMyAdmin 配置檔 `config.inc.php`

/* 找到對應伺服器陣列索引 $i,通常為 1 */
$cfg['Servers'][$i]['password'] = '新密碼';  // 填入與上方相同的新密碼

/* 若使用 config.sample.inc.php 為藍本,請確認已重命名為 config.inc.php */

步驟 5:測試登入

  • 命令列:`mysql -u root -p'新密碼'`
  • 瀏覽器開啟 phpMyAdmin,應可直接登入(若設定 `cookie` 驗證模式則輸入新密碼)

方案二:透過 phpMyAdmin 介面修改(需先能登入 phpMyAdmin)

  1. 登入 phpMyAdmin
  2. 左側選擇 `mysql` 資料庫
  3. 點擊 `user` 資料表 → 「瀏覽」
  4. 找到 `User = 'root'` 的行,點擊「編輯」
  5. 在 `Password` / `authentication_string` 欄位選擇 `PASSWORD` 函數,輸入新密碼 → 「執行」
  6. 同步修改 `config.inc.php` 中的 `$cfg['Servers'][$i]['password']`

常見驗證模式對應說明

phpMyAdmin `$cfg['Servers'][$i]['auth_type']`行為配置密碼用途
cookie(預設)登入頁輸入帳密配置檔密碼僅供 phpMyAdmin 內部連線控制用戶,不影響用戶登入
config直接以配置檔帳密登入,無登入頁**必須**與 MySQL 實際密碼一致,否則無法登入
http瀏覽器 HTTP Basic Auth 彈窗同 cookie,配置密碼供內部使用

安全建議

  • 生產環境**禁用** `auth_type = 'config'`,避免密碼明文寫在配置檔。
  • 修改密碼後,**立即刷新權限**並同步更新應用程式連線池配置。
  • 定期輪換 root 密碼,並遵循最小權限原則建立業務專用帳號。

總結

方案一(命令列)通用性最強,適用於無圖形介面、ssh 僅有終端機的伺服器;方案二適合習慣圖形操作的場景。核心要點:**MySQL 端改密 → FLUSH PRIVILEGES → phpMyAdmin 配置檔同步更新**。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved