什麼是逆向工程?
逆向工程 是指從現有資料庫的結構(資料表、欄位、索引、外鍵關聯)自動產生實體關聯圖 (ER Diagram) 的過程。MySQL Workbench 內建此功能,免費且跨平台。
安裝 MySQL Workbench
- Windows:官網下載
.msi 安裝包。
- macOS:官網下載
.dmg 或使用 brew install --cask mysqlworkbench。
- Ubuntu/Debian:
sudo apt update && sudo apt install mysql-workbench(或軟體中心搜尋安裝)。
生成 ER 圖步驟
- 啟動 Workbench,選單列點擊 Database → Reverse Engineer…
- 連線視窗填入 MySQL 連線參數(主機、埠、用戶、密碼),點擊 Next。
- 選擇要逆向的 Schema(資料庫),點擊 Next。
- 確認擷取的物件(Tables、Views、Routines 等),點擊 Execute 開始分析。
- 完成後點擊 Close,左側 EER Diagrams 區域會出現新圖表。
- 雙擊圖表即可看到完整的 ER 圖:資料表以方框呈現,連線代表外鍵關聯(實線=識別關係,虛線=非識別關係)。

ER 圖進階操作
- 調整佈局:拖曳資料表重新排列,使用 Arrange → Auto Layout 自動整理。
- 過濾顯示:右鍵資料表可選擇 Hide 或 Show Related 專注特定領域。
- 編輯模型:直接在圖表上新增/修改資料表、欄位、關聯,完成後可 Database → Forward Engineer… 產生 SQL 腳本同步回資料庫。
- 匯出圖片:File → Export → Export as PNG/PDF/PS 供文件使用。

常見問題
| 問題 | 解決方案 |
| 連線失敗 | 確認 MySQL 服務運行、防火牆開放 3306、用戶有遠端連線權限 |
| 外鍵關聯未顯示 | 確認資料表使用 InnoDB 引擎且已定義 FOREIGN KEY |
| 圖表過大難以閱讀 | 使用分頁或建立多個 EER Diagram 依功能模組拆分 |
| 中文欄位顯示亂碼 | 確認連線參數 Character Set 設為 utf8mb4 |
小結
MySQL Workbench 逆向工程是資料庫設計文件化、團隊溝通、重構分析的利器。善用模型編輯與正向工程,可實現「圖文同步」的資料庫開發流程。