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

phpMyAdmin 2.x 安裝、配置、多伺服器管理與進階認證完整手冊

     編輯:MySQL 資料庫相關知識

phpMyAdmin 是最經典的 MySQL Web 管理介面。本文整理 2.x 版本的快速安裝、config.inc.php3 關鍵參數、多伺服器支援、基本/進階認證模式、安全防護與常見問題。

快速安裝

  1. 解壓至 Web 目錄
  2. 編輯 config.inc.php3:設定 $cfgServers[1]['host']、['user']、['password']
  3. 瀏覽器開啟 https://host/dir/index.php3
  4. 必須保護目錄:.htaccess / HTTP Basic Auth / 防火牆限制 IP

多語言支援

// 修改 config.inc.php3
require("chinese_gb.inc.php3");  // 繁體用 chinese_big5.inc.php3

核心配置陣列 $cfgServers (支援多 MySQL 伺服器)

認證模式對比

鍵值型別說明
hoststring主機名,如 localhost
portstring埠號,預設 3300 (保留空值)
adv_authbooleantrue=進階認證 (HTTP Auth),false=基本認證 (配置檔存帳密)
user/passwordstring基本認證模式使用
stduser/stdpassstring進階認證模式:驗證真實使用者的標準帳號 (需讀 mysql.user/db 表)
only_dbstring僅顯示指定資料庫
verbosestring下拉選單顯示名稱 (多伺服器時)
模式adv_auth帳密儲存適用場景
基本認證falseconfig.inc.php3 明文單一管理員、內網、受保護目錄
進階認證true不存儲,HTTP Auth 即時驗證多使用者、共享主機、Shell 存取環境

進階認證流程

  1. 使用者輸入帳密 → HTTP Basic Auth
  2. phpMyAdmin 用 stduser/stdpass 連線 MySQL,查詢 mysql.user 驗證帳密
  3. 若 Select_priv='N',查 mysql.db 找 Select_priv='Y' 的庫
  4. 顯示授權資料庫列表

建立 phpMyAdmin 專用驗證帳號

INSERT INTO user (Host,User,Password,Select_priv,...) VALUES ('localhost','pma',PASSWORD('xxx'),'N',...);
INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,...)
VALUES ('localhost','*','pma','Y','Y','Y','Y','Y','Y',...);

介面客製化參數

參數說明
$cfgMaxRows瀏覽每頁列數
$cfgShowBlob是否顯示 BLOB 欄位
$cfgShowSQL是否顯示產生的 SQL
$cfgOrder預設排序 ASC/DESC
$cfgThBgcolor/$cfgBgcolorOne/Two表頭/奇偶列顏色

常見問題 FAQ

  • 無法插入新記錄:檢查 VARCHAR 未指定長度、TEXT/BLOB 錯誤指定長度
  • 無法連線 MySQL:PHP 未編譯 MySQL 擴充、帳密錯誤
  • 無法編輯表:表必須有 PRIMARY KEY 或 UNIQUE KEY
  • 進階認證 Access Denied:stduser/stdpass 錯誤、.htaccess 干擾、帳密輸入錯誤

安全建議

  • 生產環境必須啟用進階認證 + HTTPS
  • 配置檔移至 Web 根目錄外部
  • $cfgConfirm = true 刪除/匯出前二次確認
  • 定期更新 phpMyAdmin 修補安全漏洞

結語

phpMyAdmin 2.x 奠定了 Web 資料庫管理的標準。現代版本 (5.x) 支援 PHP 7/8、MySQL 8.0、雙因子認證、主題系統、匯入/匯出格式大幅擴充。核心配置邏輯 (多伺服器、認證模式、權限控制) 保持一致。

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