再見收費的Navicat,操作所有資料庫就靠它了

leida777發表於2022-03-09

作為一名開發者,免不了要和資料庫打交道,於是我們就需要一款順手的資料庫管理工具。很長一段時間裡,Navicat 都是我的首選,但最近更換了一臺新電腦,之前的綠色安裝包找不到了。


於是就琢磨著,找一款免費的,功能和 Navicat 有一拼的資料庫管理工具來替代。好朋友 macrozheng 給我推薦了 DBeaver,試用完後體驗真心不錯,於是就來給大家安利一波。


一、關於 DBeaver

DBeaver 是一個跨平臺的資料庫管理工具,支援 Windows、Linux 和 macOS。它有兩個版本,企業版和社群版,對於個人開發者來說,社群版的功能已經足夠強大。


DBeaver 是由 Java 編寫的,預設使用 JDK 11 進行編譯。社群版基於 Apache-2.0 License 在 GitHub 上開源,目前已獲得 24k+ 的星標。





DBeaver 支援幾乎所有主流的資料庫,包括關係型資料庫和非關聯式資料庫。




二、安裝 DBeaver

可以透過 DBeaver 官方下載安裝包,也可以透過 GitHub 下載 release 版本。


官方下載地址:




根據自己電腦的作業系統下載對應的安裝包,完整安裝後,第一步要做的是配置 Maven 映象,否則在後續下載資料庫驅動的時候會非常的慢。




因為 DBeaver 是基於 Maven 構建的,資料庫驅動也就是連結資料庫的 JDBC 驅動是透過 Maven 倉庫下載的。選擇「首選項」→「Maven」,新增阿里雲映象地址:



和配置 Maven 映象一樣,如下圖所示。




配置完成後,記得把阿里雲映象倉庫置頂。




三、管理資料來源

像使用 Navicat 一樣,我們需要先建立連線,這裡就以 MySQL 為例。點選「連線」小圖示,選擇資料庫。




點選下一步,這時候需要填寫資料庫連線資訊。




點選「測試連結」,如果使用預設的 Maven 倉庫時,下載驅動會非常慢,如下圖所示,還容易失敗「踩過的坑就不要再踩了」。




如果你前面按照我說的配置了阿里雲的 Maven 映象,程式就不一樣了,點了「測試連結」,瞬間會彈出「連線已成功」的提示框。




連結成功後,就可以看到資料庫中的表啊、檢視啊、索引啊等等。




四、管理表

資料庫連線成功後,最重要的還是操作表。


01、檢視錶


選擇一張表,雙擊後就可以看到表的屬性了,可以檢視錶的列、約束(主鍵)、外來鍵、索引等等資訊。




點選「DDL(Data Definition Language,資料定義語言)」可以看到詳細的建表語句。




點選「資料」可以檢視錶的資料,底部有「新增」、「修改」、「刪除」等行操作按鈕。




可以在頂部的過濾框中填寫篩選條件,然後直接查詢結果。




如果不想顯示某一列的話,可以直接點選「自定義結果集」圖表,將某個欄位的狀態設定為不可見即可。




02、新增表


在左側選擇「表」,然後右鍵選擇「新建表」即可建表id。




之後在右側列的區域右鍵,選擇「新建列」即可新增欄位。




比如說我們新建一個主鍵 ID,如下圖所示。




在 DBeaver 中,[v] 表示真,[] 表示否。緊接著在「約束」裡選擇 ID 將其設定為主鍵。




最後點選儲存,會彈出一個建表語句的預覽框,點選「執行」即可完成表的建立。




五、執行 SQL

右鍵資料庫表,選擇右鍵選單中的「SQL 編輯器」可以開啟 SQL 編輯皮膚。




然後編輯 SQL 語句,點選執行的小圖示就可以查詢資料了。這個過程會有語法提示,非常 nice。




DBeaver 有一個很亮眼的操作就是,可以直接選中一條結果集,然後右鍵生成 SQL。




比如說 insert 語句,這樣再插入一條重複性內容的時候就非常方便了。




六、外觀配置

可以在首選項裡對外觀進行設定,比如說把主題修改為暗黑色。




然後介面就變成了暗黑系。




還可以設定字型大小等。




從整體的風格來看,DBeaver 和 Eclipse 有些類似,事實上也的確如此,DBeaver 是基於 Eclipse 平臺構建的。




七、總結

總體來說,DBeaver是一款非常優秀的開源資料庫管理工具了,功能很全面,日常的開發基本上是夠用了。對比收費的 Navicat 和 DataGrip,可以說非常良心了。大家如果遇到收費版不能使用的時候,可以來體驗一下社群版 DBeaver。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014825/viewspace-2868630/,如需轉載,請註明出處,否則將追究法律責任。

相關文章