เนื่องจากการได้รับนิยมอย่างสูงของ PostgreSQL ทำให้ นักพัฒนาหลายคน ก็จะมองหาเครื่องมือที่จะมาช่วยให้การทำงานกับฐานข้อมูลนั้นง่าย เร็ว และ สะดวกขึ้น วันนี้เราพาไปดูเครื่องมือตัวหนึ่งที่ได้รับความนิยมใช้อย่างกว้างขวาง และ มันเป็นซอฟต์แวร์เพียงไม่กี่ตัวในท้องตลาดที่มีความสามารถในการทำ forward – reverse engineering ในเวอร์ชั่นฟรีด้วย
pgModeler คืออะไร
pgModeler นั้นคือซอฟต์แวร์แบบ open-source ที่ใช้เพื่อการออกแบบฐานข้อมูลโดยเฉพาะ มันทำงานได้แบบครอสแพลตฟอร์มหรือ ทำงานได้บนหลายๆ ระบบปฏิบัติการ มันมีฟีเจอร์เยอะ ออกแบบเพื่อให้ใช้งานง่าย นอกจากนั้นมันยังมีความสามารถในการสร้าง sql scripts หรือทำการ diff ได้ ออกแบบเพื่อโฟกัสสำหรับผู้ที่ใช้ PostgreSQL โดยเฉพาะ

ตัวมันมี 2 Editions คือ open-source และ Plus version ซึ่ง มีข้อต่างกันคือ
open-source edition จะมีความสามารถ การช่วยออกแบบโมเดล การทำ forward – reverse engineering การสร้าง XML การ validate model ให้ จัดการ connections มี command line

สำหรับใน version Pro นั้นจะมีฟีเจอร์เพิ่มขึ้นมาคือ
การติดตั้ง
สำหรับการติดตั้ง วันนี้เราจะติดตั้ง pgModeler 2.0 (Alpha) นั้นถ้าท่านเลือก Opensource ท่านจะต้องทำการ compile เอง โดยวันนี้เราจะพาท่านไปพบกับการติดตั้งบน Ubuntu 25.04 (Plucky)
การติดตั้งนั้น ท่านจะต้องติดตั้ง libraries ต่างๆ ก่อนทำการ compile ด้วย เพราะว่าเนื่องจากว่ามันเป็น cross-platform ผู้พัฒนาเลยใช้ QT6 ในการพัฒนา ดังนั้น ท่านจะต้องทำการติดตั้ง libraries ดังต่อไปนี้
ตั้งค่าตัวแปร QT_ROOT เพื่อชี้ไปยัง qt6
export QT_ROOT=/usr/lib/x86_64-linux-gnu/qt6
ติตดั้ง Libraries ที่จำเป็น
sudo apt install qt6-base-dev qt6-base-dev-tools qt6-tools-dev qt6-tools-dev-tools qt6-svg-dev
เริ่มทำการ compile
sudo cmake -S . -B ./cmake-build \
-DCMAKE_PREFIX_PATH=$QT_ROOT -DCMAKE_BUILD_TYPE=Release \
-DPGM_PREFIX=/opt/pgModeler --fresh CMakeList.txt
ทำการ build
sudo cmake --build ./cmake-build --target all
ติดตั้ง
sudo cmake --install ./cmake-build/
ซอฟต์แวร์จะถูกติดตั้งที่ /opt/pgModeler/bin
ท่านก็สามารถรันด้วยคำสั่ง /opt/pgModeler/bin/pgmodeler
หรืออาจจะใส่ path ดังกล่าวใน .profile เพื่อให้สะดวกต่อการใช้งาน
การติดตั้งก็อาจจะหลายขั้นตอนพอสมควร แต่ถ้าท่านไม่อยากปวดหัวกับการติดตั้ง และ เชื่อมต่อเพื่อทำงานกับหลายๆ ฐานข้อมูลพร้อมกันจาก application เดียว เลือก Navicat ก็เป็นทางเลือกที่ดีอยู่ไม่ใช่น้อย