Navicat官方出品!這款現代化的資料庫設計工具太香了!

macrozheng發表於2024-11-19
我們經常會使用專門的資料庫設計工具來設計資料庫,比如PowerDesigner,其實Navicat中已經內建了一款非常好用的資料庫設計工具!今天給大家分享下Navicat自帶的資料庫設計工具,還有一些其他實用的Navicat功能,希望對大家有所幫助!

mall專案介紹

由於下面我會以mall專案的資料庫表設計為例來講解Navicat的資料庫設計功能,這裡先簡單介紹下它,mall專案是一套基於SpringBoot3 + Vue 的電商系統(Github標星60K),後端支援多模組和2024最新微服務架構,採用Docker和K8S部署。包括前臺商城專案和後臺管理系統,能支援完整的訂單流程!涵蓋商品、訂單、購物車、許可權、優惠券、會員、支付等功能!

專案地址:

  • Boot專案:https://github.com/macrozheng/mall
  • Cloud專案:https://github.com/macrozheng/mall-swarm
  • 教程網站:https://www.macrozheng.com

專案演示:

資料庫設計

在我沒發現Navicat的資料庫設計功能之前,我會使用PowerDesigner這類資料庫設計工具先設計好資料庫,再透過Navicat匯入資料庫表。其實Navicat裡早已內建了資料庫設計工具,這裡就以我的mall電商實戰專案為例,來介紹下它的資料庫設計功能。
  • 我們可以透過Navicat頂部的模型按鈕開啟資料庫設計功能,透過新建模型來建立一個MySQL的模型;

  • 然後透過新建表的按鈕來創一張表,之後就可以對錶新增欄位了,這裡我新增了一張後臺使用者表ums_admin

  • 有時候我們需要在表與表之間建立外來鍵,我們只需點選新增外來鍵按鈕,然後拖動到需要建立關係的兩個欄位上就可以完成外來鍵的建立了,這裡的後臺使用者和角色之間具有多對多的關係;

  • 我這裡使用Navicat的資料庫設計功能,設計了下mall電商實戰專案的許可權模組,對比之前使用的PowerDesigner,確實介面現代化了不少;

  • 如果你想開啟設計好的資料庫模型的話,可以右鍵點選開啟外部模型這裡以mall電商實戰專案的商品模組為例

  • 這裡是mall電商實戰專案商品模組的資料庫表設計模型,效果還是非常不錯的;

  • mall專案的所有資料庫設計模型都在我的mall-learning專案中,專案地址:https://github.com/macrozheng/mall-learning

結構同步

我們在開發專案的時候,資料庫往往也是迭代開發的。比如我們的生產環境目前只開發了許可權和商品模組,我們的開發環境新增了訂單模組,此時就會有從開發環境將表結構同步到生產環境的需求,此時我們就可以使用Navicat的結構同步功能了。
  • 例如我們現在有生產環境資料庫mall-prod,僅包含許可權、商品模組的資料庫表;

  • 還有開發環境資料庫mall-dev,包含許可權、商品、訂單模組的資料庫表,此時想將mall-dev的資料庫表同步至mall-dev上去;

  • 我們可以透過工具->結構同步功能來實現,選擇好源和目標資料庫即可;

  • 之後Navicat會自動比較出兩個資料庫的結構差異,我們一路點選下一步進行同步即可。

資料備份

在我們對資料庫進行有風險的操作時,往往需要進行資料備份,定時備份資料也可以防止資料的丟失,其實Navicat也提供了對應的功能,這裡我們來講解下資料備份的使用。
  • 我們可以透過備份->新建備份來建立一個新的資料庫備份;

  • 如果你想還原備份的話,選中備份後右鍵點選還原備份即可。

總結

今天給大家分享了Navicat非常實用的功能,涵蓋了資料庫設計、結構同步和資料備份這3個功能。

專案地址

本文示例來自於我的mall電商實戰專案,如果你想學習電商系統的全套資料庫設計的話可以訪問如下地址。

https://github.com/macrozheng/mall

相關文章