วิธีใช้ TablePlus เพื่อจัดการฐานข้อมูลใน ServBay
ServBay เป็นสภาพแวดล้อมสำหรับนักพัฒนาเว็บที่รองรับระบบปฏิบัติการ macOS และ Windows โดยมีการรวมภาษาโปรแกรม เว็บเซิร์ฟเวอร์ และระบบฐานข้อมูลหลากหลายชนิดไว้ในที่เดียว สำหรับนักพัฒนาที่ต้องการจัดการฐานข้อมูลเช่น MySQL/MariaDB, PostgreSQL, SQLite, Redis และ MongoDB ที่รวมอยู่ใน ServBay ได้อย่างมีประสิทธิภาพ การเลือกใช้เครื่องมือสำหรับจัดการฐานข้อมูลที่มีประสิทธิภาพ เช่น TablePlus ถือเป็นตัวเลือกที่ยอดเยี่ยม TablePlus เป็นโปรแกรมที่ทันสมัย ใช้งานง่าย และรองรับฐานข้อมูลหลากหลาย จึงเหมาะสำหรับใช้งานร่วมกับ ServBay
บทความนี้จะสอนวิธีใช้ TablePlus เพื่อเชื่อมต่อและจัดการฐานข้อมูลใน ServBay บน macOS อย่างละเอียด
TablePlus คืออะไร?
TablePlus คือเครื่องมือ GUI สำหรับจัดการฐานข้อมูลที่มีประสิทธิภาพและเข้าใจง่าย โดยรองรับฐานข้อมูลหลากหลายประเภท เช่น:
- ฐานข้อมูลเชิงสัมพันธ์: MySQL, MariaDB, PostgreSQL, SQLite, SQL Server
- NoSQL: Redis, MongoDB
- อื่น ๆ: Cassandra, Oracle เป็นต้น
TablePlus มาพร้อมฟีเจอร์หลัก ๆ ที่ช่วยให้งานพัฒนาและบริหารฐานข้อมูลเป็นเรื่องง่าย:
- อินเตอร์เฟซที่เป็นมิตร: ดีไซน์เรียบง่าย เข้าใจง่าย และสามารถใช้งานได้ทันที
- ตอบสนองรวดเร็ว: ออกแบบมาสำหรับประสิทธิภาพสูง แม้ต้องจัดการกับข้อมูลจำนวนมากก็ยังลื่นไหล
- Query Editor ทรงพลัง: มีไฮไลท์ซินแท็กซ์, autocomplete และสามารถเปิดหลายแท็บ query พร้อมกัน
- จัดการและดูข้อมูล: เพิ่ม ลบ แก้ไขข้อมูลได้อย่างรวดเร็ว
- บริหารโครงสร้าง: จัดการโครงสร้าง ตาราง อินเด็กซ์ วิว ฯลฯ แบบกราฟิก
- การเชื่อมต่อที่ปลอดภัย: รองรับ SSL/TLS
สำหรับนักพัฒนาที่ใช้ ServBay สำหรับงาน local development TablePlus จะช่วยให้การจัดการฐานข้อมูลของคุณเป็นเรื่องง่ายกว่าที่เคย
เชื่อมต่อฐานข้อมูล ServBay กับ TablePlus
ServBay จะเริ่มบริการฐานข้อมูลหลายตัวแบบ local โดยอัตโนมัติ สามารถตรวจสอบสถานะฐานข้อมูลที่ติดตั้งหรือกำลังทำงานอยู่ในแท็บ แพ็คเกจ (Packages) ของแอป ServBay การเชื่อมต่อฐานข้อมูลกับ TablePlus จำเป็นต้องใช้ข้อมูลการเชื่อมต่อ ซึ่งสามารถดูได้ในแท็บ ฐานข้อมูล (Databases) ของแอป ServBay
ต่อไปนี้คือขั้นตอนและข้อมูลสำหรับเชื่อมต่อฐานข้อมูลแต่ละชนิดใน ServBay
เชื่อมต่อ MariaDB หรือ MySQL
ServBay ติดตั้งและเปิดใช้งาน MariaDB ไว้เป็นค่าเริ่มต้น (สามารถใช้งานเหมือน MySQL ได้)
- ดาวน์โหลดและติดตั้ง TablePlus: หากยังไม่ได้ติดตั้ง ให้เข้าไปที่ เว็บไซต์ TablePlus ดาวน์โหลดและติดตั้ง TablePlus สำหรับ macOS
- เปิด TablePlus และสร้างการเชื่อมต่อใหม่:
- เปิด TablePlus
- คลิกไอคอน "+" ที่มุมซ้ายบน หรือไปที่เมนู
File->New->Connection... - เลือกประเภทฐานข้อมูลเป็น
MariaDBหรือMySQL
- ตั้งค่าข้อมูลการเชื่อมต่อ:
- Name: ตั้งชื่อที่จำง่าย เช่น
ServBay MariaDB - Host:
127.0.0.1(localhost) - Port:
3306(หมายเลขพอร์ตเริ่มต้นของ MariaDB/MySQL) - User: ดูชื่อผู้ใช้ root ได้จากแท็บ ฐานข้อมูล (Databases) ในแอป ServBay (โดยทั่วไปคือ
root) - Password: ดูรหัสผ่าน root ได้จากแท็บเดียวกัน
- Database: สามารถเว้นว่าง หรือใส่ชื่อฐานข้อมูลที่ต้องการเชื่อมต่อก็ได้
- ทางเลือก: คุณสามารถใช้การเชื่อมต่อแบบ Socket ซึ่งเร็วและตรงกว่า TCP/IP
- ติ๊กที่ Use socket file
- Socket Path:
/Applications/ServBay/tmp/mysql.sock(เป็นค่าเริ่มต้นของ ServBay MariaDB/MySQL) - เมื่อใช้ Socket จะไม่ต้องกรอก
HostและPort
- 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: ดูชื่อผู้ใช้ได้จากแท็บ ฐานข้อมูล (Databases) (โดยปกติเป็น
servbay) - Password: ดูรหัสผ่านจากแท็บเดียวกัน
- Database: ต้องใส่ชื่อฐานข้อมูลที่ต้องการ เช่น
postgresหรือฐานข้อมูลที่สร้างไว้ - ทางเลือก: สามารถเลือกใช้ Socket ได้
- ติ๊กที่ Use socket file
- Socket Path:
/Applications/ServBay/tmp/.s.PGSQL.5432(เป็นค่าเริ่มต้นของ ServBay PostgreSQL) - เมื่อใช้ Socket จะไม่ต้องกรอก
HostและPort
- Name: เช่น
- ทดสอบและบันทึกการเชื่อมต่อ:
- คลิก
Testเพื่อลองเชื่อมต่อ - คลิก
ConnectหรือSave
- คลิก
เชื่อมต่อ SQLite 3
SQLite เป็นฐานข้อมูลที่เก็บข้อมูลไว้ในไฟล์ ไม่มีเซิร์ฟเวอร์แยก โปรแกรมสามารถใช้ PHP PDO SQLite, Python sqlite3 หรืออื่น ๆ เพื่อเข้าถึงไฟล์ฐานข้อมูล TablePlus สามารถเชื่อมต่อกับไฟล์ฐานข้อมูล SQLite ได้โดยตรง
- เปิด TablePlus และสร้างการเชื่อมต่อใหม่:
- เปิด TablePlus
- คลิก "+" หรือไปที่
File->New->Connection... - เลือกประเภทฐานข้อมูลเป็น
SQLite
- ตั้งค่าข้อมูลการเชื่อมต่อ:
- Name: เช่น
ServBay SQLite Project - Database File: คลิกที่ไอคอนโฟลเดอร์เพื่อเลือกไฟล์ฐานข้อมูล SQLite (
.sqlite,.db,.sqlite3) ควรจัดเก็บไฟล์ในโฟลเดอร์โปรเจกต์ หรือที่ ServBay แนะนำ/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: หากตั้งรหัสผ่านไว้ใส่ตรงนี้ ถ้าเป็นค่าเริ่มต้นของ 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: หากเปิดใช้งานการยืนยันตัวตนบน MongoDB ให้กรอกชื่อผู้ใช้ ถ้าเป็นค่าเริ่มต้นอาจไม่ต้องกรอก
- Password: หากใช้การยืนยันตัวตนให้ใส่รหัสผ่าน
- Authentication Database: หากใช้ authentication ต้องระบุ database เช่น
admin - Database: สามารถเว้นว่าง หรือระบุชื่อฐานข้อมูลที่ต้องการเชื่อมต่อ
- Name: เช่น
- ทดสอบและบันทึกการเชื่อมต่อ:
- คลิก
Testเพื่อลองเชื่อมต่อ - คลิก
ConnectหรือSave
- คลิก
การจัดการฐานข้อมูลเชิงสัมพันธ์ (MariaDB/MySQL, PostgreSQL, SQLite) ด้วย TablePlus
เมื่อเชื่อมต่อสำเร็จ TablePlus จะมีอินเตอร์เฟซและวิธีการใช้งานคล้ายกันสำหรับ MariaDB/MySQL, PostgreSQL และ SQLite
1. สร้างฐานข้อมูล
- เมื่อเชื่อมต่อกับเซิร์ฟเวอร์ (หรือไฟล์สำหรับ SQLite) จะเห็นแถบเมนูด้านซ้าย
- สำหรับ MariaDB/MySQL และ PostgreSQL ให้คลิกที่ Databases
- คลิกปุ่ม "+" ด้านบนซ้าย หรือคลิกขวาที่พื้นที่ว่างแล้วเลือก
New Database... - กรอกชื่อฐานข้อมูล เลือก character set และ collation หากต้องการ
- คลิก
Save
2. สร้างตาราง
- เลือกฐานข้อมูลที่ต้องการในแถบด้านซ้าย
- คลิกที่ Tables
- คลิกปุ่ม "+" ด้านบนซ้าย หรือคลิกขวาแล้วเลือก
New Table... - กรอกชื่อตาราง
- กำหนดฟิลด์ของตารางที่ด้านล่าง:
- คลิก "+" เพื่อเพิ่มคอลัมน์
- กรอกชื่อคอลัมน์
- เลือกชนิดข้อมูล
- กำหนดขนาดหากชนิดข้อมูลรองรับ
- ติ๊ก
PKสำหรับ primary key,NNสำหรับ not null,UQสำหรับ unique,AIสำหรับ auto-increment ฯลฯ - ใส่ค่า default ได้ถ้าต้องการ
- ใส่คอมเมนท์เพิ่มข้อมูล
- กำหนดเรียบร้อยแล้วคลิก
Saveหรือใช้คีย์ลัดCmd + S
3. เพิ่มข้อมูล
- เลือกฐานข้อมูลและตารางที่ต้องการในแถบด้านซ้าย
- คลิกที่ Tables เลือกตาราง
- ในมุมมองข้อมูลตาราง คลิกที่ + Row
- แถวเปล่าจะปรากฏขึ้น ให้กรอกข้อมูลแต่ละช่อง
- กรอกเสร็จแล้วคลิก
Saveหรือใช้Cmd + S
4. ค้นหาข้อมูล
- เลือกฐานข้อมูลและตาราง
- โหลดและดูข้อมูลได้ทันทีในตาราง
- ใช้กล่อง filter ด้านบนเพื่อค้นหาข้อมูลอย่างรวดเร็ว
- สำหรับ query ที่ซับซ้อน ให้ใช้ SQL Query Editor:
- คลิกที่
SQL Queryหรือใช้Cmd + N - กรอกคำสั่ง SQL เช่น
SELECT * FROM your_table WHERE condition; - คลิก
Run Currentหรือใช้Cmd + Enterดูผลลัพธ์ด้านล่าง
- คลิกที่
5. แก้ไขข้อมูล
- ดับเบิลคลิกที่ช่องที่ต้องการแก้ไขในแถวข้อมูล
- กรอกข้อมูลใหม่
- คลิก
SaveหรือCmd + S
6. ลบข้อมูล
- เลือกแถวที่ต้องการลบในตาราง
- คลิกขวา แล้วเลือก
Delete Row(s) - ยืนยันการลบใน dialog แล้วคลิก
Delete - คลิก
SaveหรือCmd + Sเพื่อบันทึก
7. ลบตาราง
- ในแถบด้านซ้าย เลือกฐานข้อมูลที่มีตารางที่ต้องการลบ
- คลิกที่ Tables
- เลือกตารางที่ต้องการ
- คลิกขวาเลือก
Delete Table(s) - พิมพ์ชื่อตารางที่ต้องการลบเพื่อยืนยัน แล้วคลิก
Delete
8. ลบฐานข้อมูล
- ในแถบด้านซ้าย สำหรับ MariaDB/MySQL หรือ PostgreSQL คลิกที่ Databases
- เลือกฐานข้อมูลที่ต้องการลบ
- คลิกขวาเลือก
Delete Database - ยืนยันด้วยการกรอกชื่อฐานข้อมูล แล้วคลิก
Delete - กรณี SQLite: ให้ลบไฟล์
.sqliteด้วยตนเองในระบบไฟล์
การจัดการ NoSQL (Redis, MongoDB) ด้วย TablePlus
TablePlus มีอินเตอร์เฟซเฉพาะสำหรับจัดการ Redis และ MongoDB โดยฟังก์ชันการทำงานจะแตกต่างจากฐานข้อมูลเชิงสัมพันธ์
การจัดการข้อมูล Redis
หลังเชื่อมต่อกับ Redis:
- เมนูด้านซ้ายจะหาฐานข้อมูล Redis (DB0, DB1, ... โดยทั่วไปใช้ DB0)
- เลือกฐานข้อมูลจะเห็นคีย์ทั้งหมดทางขวา
- ดูข้อมูลคีย์: ดูคีย์ทั้งหมดในรายการ ใช้ filter เพื่อค้นหาได้ คลิกคีย์เพื่อดูชนิดและค่าของคีย์ ปรับดูแต่ละชนิดข้อมูลได้แบบเหมาะสม
- เพิ่มคีย์: คลิก + Row ด้านล่าง เลือกชนิดคีย์ กรอกชื่อและค่า แล้วคลิก
Save - แก้ไขคีย์: ดับเบิลคลิกชื่อคีย์หรือค่าเพื่อแก้ไข เสร็จแล้วคลิก
Save - ลบคีย์: เลือกคีย์ที่ต้องการ คลิกขวาเลือก
Delete Row(s)แล้วยืนยันใน dialog
การจัดการข้อมูล MongoDB
หลังเชื่อมต่อกับ MongoDB:
- เมนูด้านซ้ายจะแสดงฐานข้อมูลของ MongoDB
- เลือกฐานข้อมูลจะเห็นรายการ collection ทางขวา
- ดูข้อมูล collection: ดับเบิลคลิกชื่อ collection แล้วจะเห็นเอกสารในรูปแบบ JSON เป็นต้น
- เพิ่มเอกสาร: คลิก + Row ในมุมมองเอกสาร จะได้ row เปล่า สามารถแก้ไขข้อมูลแต่ละฟิลด์ได้ ดับเบิลคลิกที่ชื่อหรือค่า แล้วคลิก
Save - แก้ไขเอกสาร: ดับเบิลคลิกที่ฟิลด์ในเอกสาร หรือแก้ไข JSON/BSON โดยตรง เสร็จแล้วคลิก
Save - ลบเอกสาร: เลือกเอกสารที่ต้องการ คลิกขวาเลือก
Delete Row(s)แล้วยืนยัน - สร้าง collection: ในเมนูด้านซ้ายเลือกฐานข้อมูล คลิกที่ Collections แล้วกด "+" หรือคลิกขวาเลือก
New Collection...กรอกชื่อแล้วคลิกSave - ลบ collection: เลือก collection ที่ต้องการ คลิกขวาเลือก
Delete Collection(s)แล้วยืนยัน - ลบฐานข้อมูล: เลือกฐานข้อมูล คลิกขวาเลือก
Delete Databaseแล้วยืนยัน
คำแนะนำและคำถามที่พบบ่อย
- สถานะ ServBay: ก่อนใช้ TablePlus เชื่อมต่อฐานข้อมูล กรุณาตรวจสอบว่า ServBay กำลังทำงานอยู่ และบริการฐานข้อมูลที่ต้องการ (เช่น MariaDB, PostgreSQL, Redis, MongoDB) มีสถานะ "ทำงาน" ในแท็บ แพ็คเกจ (Packages)
- ไฟร์วอลล์: ตรวจสอบว่า macOS หรือโปรแกรมรักษาความปลอดภัยไม่ได้บล็อคพอร์ตฐานข้อมูล (3306, 5432, 6379, 27017) สำหรับ TablePlus
- ข้อมูลผู้ใช้: ข้อมูลผู้ใช้และรหัสผ่านเริ่มต้นของฐานข้อมูล สามารถดูได้จากแท็บ ฐานข้อมูล (Databases) ใน ServBay เก็บข้อมูลนี้ให้ดี
- เปลี่ยนรหัสผ่านเริ่มต้น: เพื่อความปลอดภัย สูงแนะนำให้เปลี่ยนรหัสผ่าน root หรือผู้ใช้เริ่มต้นโดยใช้ฟีเจอร์ในแท็บ ฐานข้อมูล (Databases) ที่มีฟังก์ชัน reset password หลังเปลี่ยนต้องเปลี่ยนข้อมูลใน TablePlus ด้วย
- Socket vs. Port: การเชื่อมต่อแบบ Socket จะทำงานผ่าน path ในระบบไฟล์ ระหว่างโปรเซสในเครื่องเดียวกัน จึงเร็วกว่า TCP/IP และไม่เกี่ยวกับ net config การเชื่อมต่อผ่าน Port (TCP/IP) ใช้ address
127.0.0.1เชื่อมต่อในเครื่องหรือกับเซิร์ฟเวอร์อื่น ทั้งสองอย่างใช้งานได้กับ ServBay local development - ใช้เครื่องมืออื่นได้ไหม? ได้แน่นอน นอกจาก TablePlus ยังมี DBeaver, DataGrip, Sequel Ace (MySQL/MariaDB), pgAdmin (PostgreSQL), MongoDB Compass (MongoDB) และอื่น ๆ เลือกได้ตามความชอบ วิธีเชื่อมต่อคล้ายกัน เพียงใช้ข้อมูลจากแท็บ ฐานข้อมูล (Databases) ใน ServBay
สรุป
บทความนี้จะช่วยให้คุณเชื่อมต่อและจัดการฐานข้อมูลหลากหลายชนิดใน ServBay ผ่าน TablePlus ได้อย่างง่ายและมีประสิทธิภาพ TablePlus ที่ทั้งทรงพลังและใช้งานง่าย เมื่อผนวกกับสภาพแวดล้อม local ที่ครบวงจรของ ServBay จะช่วยเพิ่ม productivity ให้งานพัฒนาของคุณมากยิ่งขึ้น อย่าลืมตรวจสอบข้อมูลสำหรับเชื่อมต่อในแอป ServBay ทุกครั้งเพื่อการเชื่อมต่อที่ราบรื่น ขอให้สนุกกับการพัฒนา!
