วิธีใช้ TablePlus จัดการฐานข้อมูลใน ServBay
ServBay คือสภาพแวดล้อมการพัฒนา Web แบบโลคอลที่ออกแบบมาสำหรับ macOS โดยเฉพาะ ผสานรวมภาษาการเขียนโปรแกรมหลายภาษา, เว็บเซิร์ฟเวอร์ และระบบฐานข้อมูลไว้ในที่เดียว เพื่อมอบแพลตฟอร์มและเครื่องมือแบบครบวงจรสำหรับนักพัฒนา การจัดการฐานข้อมูลต่างๆ ที่มาพร้อมกับ ServBay เช่น MySQL/MariaDB, PostgreSQL, SQLite, Redis และ MongoDB จะง่ายขึ้นหากใช้เครื่องมือจัดการฐานข้อมูลที่มีประสิทธิภาพอย่าง TablePlus ซึ่งเป็นไคลเอนต์ฐานข้อมูลสมัยใหม่ ใช้งานง่าย รองรับหลากหลายฐานข้อมูล เหมาะอย่างยิ่งสำหรับร่วมงานกับ ServBay
บทความนี้จะแนะนำวิธีเชื่อมต่อและบริหารจัดการฐานข้อมูลต่าง ๆ ใน ServBay ด้วย TablePlus บน macOS อย่างละเอียด
TablePlus คืออะไร
TablePlus เป็นโปรแกรมจัดการฐานข้อมูลที่มีอินเทอร์เฟซแบบ GUI ใช้งานง่ายและทรงพลัง รองรับฐานข้อมูลประเภทต่าง ๆ มากมาย เช่น
- ฐานข้อมูลแบบ SQL: MySQL, MariaDB, PostgreSQL, SQLite, SQL Server
- ฐานข้อมูลแบบ NoSQL: Redis, MongoDB
- อื่น ๆ: Cassandra, Oracle เป็นต้น
TablePlus มีฟีเจอร์สำคัญหลากหลายที่ทำให้การพัฒนาและจัดการฐานข้อมูลเป็นเรื่องง่าย:
- อินเทอร์เฟซเข้าใจง่าย: ดีไซน์ทันสมัย เน้นการนำทางและการใช้งานที่ไม่ซับซ้อน
- ตอบสนองรวดเร็ว: ออกแบบเพื่อรองรับข้อมูลจำนวนมากได้อย่างลื่นไหล
- เครื่องมือแก้ไข Query อันทรงพลัง: รองรับ syntax highlight, ระบบ autocomplete และหลายแท็บการ Query
- แก้ไขและดูข้อมูลสะดวก: เพิ่ม แก้ไข ลบข้อมูลได้อย่างรวดเร็ว
- บริหารโครงสร้างง่าย: จัดการ Table, Index, View และอื่น ๆ ได้แบบ Visual
- เชื่อมต่อปลอดภัย: รองรับการเข้ารหัส SSL/TLS
TablePlus จึงช่วยเพิ่มประสิทธิภาพการทำงานกับฐานข้อมูลเมื่อใช้งานร่วมกับ ServBay สำหรับนักพัฒนา macOS
เชื่อมต่อฐานข้อมูลใน ServBay ด้วย TablePlus
ServBay เริ่มต้นบริการฐานข้อมูลต่าง ๆ แบบโลคอลโดยอัตโนมัติ คุณสามารถตรวจสอบสถานะการติดตั้งและการทำงานของฐานข้อมูลได้ที่แท็บ Packages (ซอฟต์แวร์แพ็กเกจ) ในแอป ServBay ส่วนข้อมูลการเชื่อมต่อสำหรับใช้งานกับ TablePlus สามารถดูได้ในแท็บ Databases (ฐานข้อมูล)
ด้านล่างนี้เป็นขั้นตอนและรายละเอียดการเชื่อมต่อฐานข้อมูลแต่ละประเภทกับ TablePlus
เชื่อมต่อ MariaDB หรือ MySQL
ServBay ติดตั้งและเปิดบริการ MariaDB โดยค่าเริ่มต้น (รองรับการใช้งาน MySQL ด้วย)
- ดาวน์โหลดและติดตั้ง TablePlus: หากยังไม่มีโปรแกรม สามารถดาวน์โหลดสำหรับ macOS ได้ที่ เว็บไซต์ TablePlus
- เปิด TablePlus และสร้างการเชื่อมต่อใหม่:
- เปิด TablePlus
- คลิกเครื่องหมาย "+" ที่มุมซ้ายบน หรือเลือก
File
->New
->Connection...
- เลือกชนิดฐานข้อมูลเป็น
MariaDB
หรือMySQL
- ตั้งค่าข้อมูลการเชื่อมต่อ:
- Name: ตั้งชื่อให้ง่ายต่อการจดจำ เช่น
ServBay MariaDB
- Host:
127.0.0.1
(เชื่อมต่อภายในเครื่อง) - Port:
3306
(ค่าปกติของ MariaDB/MySQL) - User: ค้นหาชื่อผู้ใช้ root ได้ที่แท็บ Databases ของแอป ServBay (มักจะเป็น
root
) - Password: ดูรหัสผ่านของ root ที่แท็บ Databases เช่นกัน
- Database: สามารถเว้นว่างไว้ เลือกฐานข้อมูลหลังเชื่อมต่อ หรือใส่ชื่อฐานข้อมูลที่ต้องการเชื่อม
- Alternative: คุณอาจเลือกเชื่อมต่อแบบ Socket ซึ่งเร็วกว่า
- ติ๊ก Use socket file
- Socket Path:
/Applications/ServBay/tmp/mysql.sock
(Path มาตรฐานของ ServBay) - ค่าของ
Host
และPort
จะถูกละเลยหากใช้ Socket
- Name: ตั้งชื่อให้ง่ายต่อการจดจำ เช่น
- ทดสอบและบันทึกการเชื่อมต่อ:
- คลิก
Test
เพื่อตรวจสอบความถูกต้องของข้อมูล หากสำเร็จแปลว่าตั้งค่าถูกต้อง - คลิก
Connect
เพื่อเชื่อมต่อ หรือSave
เพื่อบันทึกค่าไว้ใช้ภายหลัง
- คลิก
เชื่อมต่อ PostgreSQL
ServBay รองรับบริการฐานข้อมูล PostgreSQL เช่นกัน
- เปิด TablePlus และสร้างการเชื่อมต่อใหม่:
- เปิด TablePlus
- คลิกเครื่องหมาย "+" หรือเลือก
File
->New
->Connection...
- เลือกชนิดฐานข้อมูลเป็น
PostgreSQL
- ตั้งค่าข้อมูลการเชื่อมต่อ:
- Name: เช่น
ServBay PostgreSQL
- Host:
127.0.0.1
- Port:
5432
(ค่าปกติ PostgreSQL) - User: ดูชื่อผู้ใช้เริ่มต้น (ปกติเป็น
servbay
) ในแท็บ Databases - Password: ดูรหัสผ่านที่แท็บเดียวกัน
- Database: ปกติจะระบุฐานข้อมูลเริ่มต้นเช่น
postgres
หรือชื่ออื่นที่สร้างไว้ - Alternative: สามารถใช้ Socket ได้เช่นกัน
- ติ๊ก Use socket file
- Socket Path:
/Applications/ServBay/tmp/.s.PGSQL.5432
(Path มาตรฐานของ ServBay) - จะไม่อ่านค่า
Host
และPort
เมื่อใช้ Socket
- Name: เช่น
- ทดสอบและบันทึกการเชื่อมต่อ:
- คลิก
Test
เพื่อตรวจสอบ - จากนั้นคลิก
Connect
หรือSave
- คลิก
เชื่อมต่อ SQLite 3
SQLite เป็นฐานข้อมูลความเบา ข้อมูลถูกจัดเก็บในไฟล์เดียว ไม่ต้องรันเป็นเซิฟเวอร์ ServBay ไม่ได้รัน SQLite แบบแอคทีฟ แต่ให้บริการและเส้นทางสำหรับเข้าถึงไฟล์ได้ TablePlus สามารถเชื่อมต่อกับไฟล์เหล่านี้โดยตรง
- เปิด TablePlus และสร้างการเชื่อมต่อใหม่:
- เปิด TablePlus
- คลิก "+" หรือ
File
->New
->Connection...
- เลือกชนิดเป็น
SQLite
- ตั้งค่าข้อมูลการเชื่อมต่อ:
- Name: เช่น
ServBay SQLite Project
- Database File: คลิกไอคอนไฟล์เพื่อเลือกไฟล์ฐานข้อมูล (
.sqlite
,.db
,.sqlite3
เป็นต้น) แนะนำให้นำฐานข้อมูลไว้ในโฟลเดอร์โปรเจกต์หรือใน/Applications/ServBay/db/sqlite
เพื่อให้จัดการง่าย
- Name: เช่น
- ทดสอบและบันทึกการเชื่อมต่อ:
- คลิก
Test
(ถ้ามีไฟล์และเข้าถึงได้) - คลิก
Connect
หรือSave
- คลิก
เชื่อมต่อ Redis
Redis เป็นฐานข้อมูลแบบ key-value ที่ประมวลผลเร็วมาก ServBay สามารถติดตั้งและรัน Redis
- เปิด TablePlus และสร้างการเชื่อมต่อใหม่:
- เปิด TablePlus
- คลิก "+" หรือเลือก
File
->New
->Connection...
- เลือกชนิดเป็น
Redis
- ตั้งค่าข้อมูลการเชื่อมต่อ:
- Name: เช่น
ServBay Redis
- Host:
127.0.0.1
- Port:
6379
(ค่าปกติ Redis) - Password: ถ้าตั้งรหัสผ่าน Redis ใน ServBay ให้กรอกค่าตรงนี้ โดยปกติ ServBay จะยังไม่ตั้งรหัส สามารถเว้นว่างได้
- Name: เช่น
- ทดสอบและบันทึกการเชื่อมต่อ:
- คลิก
Test
เพื่อตรวจสอบ - จากนั้นคลิก
Connect
หรือSave
- คลิก
เชื่อมต่อ MongoDB
ServBay รองรับการติดตั้งและรัน MongoDB
- เปิด TablePlus และสร้างการเชื่อมต่อใหม่:
- เปิด TablePlus
- คลิก "+" หรือเลือก
File
->New
->Connection...
- เลือกชนิดเป็น
MongoDB
- ตั้งค่าข้อมูลการเชื่อมต่อ:
- Name: เช่น
ServBay MongoDB
- Host:
127.0.0.1
- Port:
27017
(ค่าปกติ MongoDB) - User: หากเปิดใช้ authentication ใน MongoDB ให้กรอกชื่อผู้ใช้ หากยังไม่ได้เปิด สามารถเว้นว่าง
- Password: ใส่หากเปิดใช้ authentication
- Authentication Database: อาจต้องระบุว่าเป็น
admin
ถ้าใช้ authentication - Database: เว้นว่างหรือระบุชื่อฐานข้อมูลที่ต้องการเชื่อมต่อ
- Name: เช่น
- ทดสอบและบันทึกการเชื่อมต่อ:
- คลิก
Test
เพื่อตรวจสอบ - จากนั้นคลิก
Connect
หรือSave
- คลิก
ใช้ TablePlus จัดการฐานข้อมูลแบบ SQL (MariaDB/MySQL, PostgreSQL, SQLite)
เมื่อเชื่อมต่อสำเร็จ TablePlus จะมอบอินเทอร์เฟซหลักและ workflow คล้าย ๆ กันในการบริหารจัดการฐานข้อมูล SQL ได้แก่ MariaDB/MySQL, PostgreSQL และ SQLite
1. สร้างฐานข้อมูลใหม่
- เชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูล (หรือไฟล์ของ SQLite)
- สำหรับ MariaDB/MySQL และ PostgreSQL คลิกที่แท็บ Databases ทางซ้าย
- คลิกปุ่ม "+" หรือคลิกขวาบนพื้นที่ว่างเลือก
New Database...
- ตั้งชื่อฐานข้อมูล กำหนด Charset และ Collation ถ้าต้องการ
- คลิก
Save
2. สร้างตาราง
- เลือกฐานข้อมูลที่ต้องการสร้างตารางใน Sidebar ซ้าย
- คลิกแท็บ Tables
- คลิก "+" หรือคลิกขวาเลือก
New Table...
- ใส่ชื่อตาราง
- กำหนดคอลัมน์ตามต้องการ:
- คลิก "+" เพื่อเพิ่มคอลัมน์
- กรอก
Column Name
- เลือกชนิดข้อมูล (Type)
- ตั้งค่า Length/Values ถ้าจำเป็น
- กำหนด
PK
(Primary Key),NN
(Not Null),UQ
(Unique Index),AI
(Auto Increment) ตามต้องการ - ใส่ค่า Default
- เพิ่ม Comment ได้
- กำหนดคอลัมน์เสร็จแล้วคลิก
Save
หรือใช้คีย์ลัดCmd + S
เพื่อบันทึก
3. เพิ่มข้อมูล
- เลือกฐานข้อมูลและตารางที่ต้องการใน Sidebar
- คลิกแท็บ Tables และเลือกชื่อตาราง
- ในมุมมองข้อมูลตาราง คลิกปุ่ม + Row ด้านล่าง
- กรอกข้อมูลแต่ละฟิลด์
- คลิก
Save
หรือCmd + S
เพื่อบันทึก
4. คิวรีข้อมูล
- ใน Sidebar เลือกฐานข้อมูลและตารางตามต้องการ
- เรียกดูข้อมูลตรง ๆ ในตารางได้เลย
- ใช้ Filter ด้านบนเพื่อค้นหาข้อมูล
- ถ้าอยากเขียน Query เอง:
- คลิก
SQL Query
หรือCmd + N
- พิมพ์คำสั่ง SQL เช่น
SELECT * FROM your_table WHERE ...
- คลิก
Run Current
(ไอคอนสายฟ้า) หรือCmd + Enter
เพื่อรันและดูผลลัพธ์
- คลิก
5. อัปเดตข้อมูล
- ดับเบิลคลิกเซลล์ในตารางที่ต้องการเปลี่ยน
- ป้อนค่าข้อมูลใหม่
- คลิก
Save
หรือCmd + S
เพื่อบันทึกการเปลี่ยนแปลง
6. ลบข้อมูล
- เลือกแถวที่ต้องการลบในมุมมองตาราง
- คลิกขวาแล้วเลือก
Delete Row(s)
- ยืนยันการลบโดยคลิก
Delete
- คลิก
Save
หรือกดCmd + S
เพื่อบันทึก
7. ลบตาราง
- เลือกฐานข้อมูลที่ต้องการใน Sidebar
- คลิกแท็บ Tables
- เลือกตารางที่ต้องการลบ
- คลิกขวาเลือก
Delete Table(s)
- พิมพ์ชื่อเพื่อยืนยันแล้วคลิก
Delete
8. ลบฐานข้อมูล
- สำหรับ MariaDB/MySQL หรือ PostgreSQL คลิกแท็บ Databases ใน Sidebar
- เลือกฐานข้อมูลที่ต้องการ
- คลิกขวาเลือก
Delete Database
- ใส่ชื่อเพื่อยืนยันแล้วคลิก
Delete
- สำหรับ SQLite: ลบฐานข้อมูลโดยลบไฟล์
.sqlite
ในระบบไฟล์เอง
ใช้ TablePlus จัดการฐานข้อมูล NoSQL (Redis, MongoDB)
TablePlus มีอินเทอร์เฟซเฉพาะสำหรับบริหาร Redis และ MongoDB ซึ่งต่างจาก SQL เล็กน้อย
จัดการข้อมูล Redis
หลังเชื่อมต่อ Redis จะพบ Sidebar ซ้ายแสดงรายชื่อฐานข้อมูล Redis (DB0, DB1, ...) โดยดีฟอลต์คือ DB0
- เลือกฐานข้อมูลที่ต้องการ จะเห็นรายชื่อ Key ในด้านขวา
- ดู Key: เรียกดูรายชื่อและข้อมูลประเภทต่าง ๆ ได้ คลิกที่ชื่อ Key เพื่อดูรายละเอียด แต่ละประเภทจะแสดงข้อมูลในรูปแบบเหมาะสม
- เพิ่ม Key: คลิก + Row เลือกชนิดคีย์ ป้อนชื่อและค่า คลิก
Save
- แก้ไข Key: ดับเบิลคลิกชื่อหรือค่าเพื่อแก้ไข แล้วคลิก
Save
- ลบ Key: เลือกหลาย Key หรือเลือกเดี่ยว ๆ คลิกขวาเลือก
Delete Row(s)
และยืนยันลบ
จัดการข้อมูล MongoDB
หลังเชื่อมต่อ MongoDB จะเห็นรายชื่อฐานข้อมูลใน Sidebar
- เลือกฐานข้อมูล ด้านขวาจะแสดง Collections
- ดู Collection: ดับเบิลคลิกชื่อ Collection จะเข้าสู่หน้าดูเอกสารในรูปแบบ JSON ฯลฯ
- เพิ่ม Document: ในหน้าของ Collection คลิก + Row เพื่อสร้าง Document ใหม่ ดับเบิลคลิกเพื่อแก้ไข แล้วกด
Save
- แก้ไข Document: ดับเบิลคลิกฟิลด์ที่ต้องการเปลี่ยน แก้ไขได้ทั้งรูปแบบ field/value หรือแก้ไข JSON ดิบ จากนั้นกด
Save
- ลบ Document: เลือก 1 หรือหลาย Document คลิกขวาเลือก
Delete Row(s)
แล้วยืนยันลบ - สร้าง Collection: เลือกฐานข้อมูล คลิกแท็บ Collections คลิก "+" หรือคลิกขวาเลือก
New Collection...
ใส่ชื่อแล้วคลิกSave
- ลบ Collection: เลือก Collection ที่ต้องการ คลิกขวาเลือก
Delete Collection(s)
ยืนยันลบ - ลบฐานข้อมูล: เลือกฐานข้อมูล คลิกขวาเลือก
Delete Database
แล้วยืนยัน
ข้อควรระวังและคำถามที่พบบ่อย
- สถานะ ServBay: ก่อนเชื่อมต่อฐานข้อมูลด้วย TablePlus ให้มั่นใจว่าได้เปิดแอป ServBay และฐานข้อมูลที่เกี่ยวข้อง (เช่น MariaDB, PostgreSQL, Redis, MongoDB) อยู่ในสถานะ “กำลังทำงาน” ในแท็บ Packages
- Firewall: ตรวจสอบให้แน่ใจว่า firewall ใน macOS หรือโปรแกรมความปลอดภัยอื่น ๆ ไม่บล็อคพอร์ตฐานข้อมูล (3306, 5432, 6379, 27017)
- รับข้อมูลการเชื่อมต่อ: ข้อมูลผู้ใช้และรหัสผ่านสามารถดูได้จากแท็บ Databases ในแอป ServBay กรุณาเก็บรักษาไว้เป็นอย่างดี
- เปลี่ยนรหัสผ่านเริ่มต้น: เพื่อความปลอดภัยแนะนำให้เปลี่ยน root หรือรหัสผ่านเริ่มต้นของฐานข้อมูลผ่านแท็บ Databases ซึ่งมักมีฟังก์ชันรีเซ็ตรหัสผ่าน หลังจากเปลี่ยน อย่าลืมอัปเดตใน TablePlus ด้วย
- เชื่อมต่อแบบ Socket vs. Port: Socket ใช้สำหรับเชื่อมต่อระหว่างโปรเซสบนเครื่องเดียว เร็วกว่าการเชื่อมต่อผ่าน TCP/IP (พอร์ต) เล็กน้อย ปลอดภัยจากข้อจำกัด Network ในสภาพแวดล้อม ServBay ใช้งานได้ทั้งสองแบบ
- ใช้เครื่องมืออื่นได้ไหม? แน่นอน เช่น DBeaver, DataGrip, Sequel Ace (MySQL/MariaDB), pgAdmin (PostgreSQL), MongoDB Compass (MongoDB) ฯลฯ ก็ใช้ได้ วิธีการเชื่อมต่อคล้ายกัน แค่ใช้ข้อมูลจากแท็บ Databases ใน ServBay
สรุป
เมื่อทำตามขั้นตอนในบทความนี้ คุณจะสามารถเชื่อมต่อและจัดการฐานข้อมูลหลากหลายบน macOS ด้วย TablePlus ในสภาพแวดล้อมโลคอล ServBay ได้อย่างมีประสิทธิภาพ ฟีเจอร์อันทรงพลังและอินเทอร์เฟซที่ใช้งานง่ายของ TablePlus เมื่อผสานกับ ServBay จะช่วยเพิ่มความคล่องตัวในการพัฒนาเป็นอย่างยิ่ง อย่าลืมหาข้อมูลการเชื่อมต่อที่ถูกต้องจากแอป ServBay ทุกครั้ง ขอให้สนุกและประสบความสำเร็จในการพัฒนา!