รับเครดิต $200

DigitalOcean Managed Databases: PostgreSQL, MySQL, Valkey ราคา ข้อดี วิธีเชื่อมต่อ และเมื่อไรควรใช้

อัปเดตล่าสุด 3 พฤศจิกายน 2569 · อ่านประมาณ 7 นาที · โดย DigitalOcean Review ไทย

คู่มือ DigitalOcean Managed Databases ภาษาไทย ราคาเริ่ม $15 ต่อเดือน backup รายวัน standby node Trusted Sources การเชื่อมต่อด้วย SSL เทียบกับการติดตั้งฐานข้อมูลเองบน Droplet

เปิดเผยข้อมูล: บทความนี้มีลิงก์แนะนำ (referral) ของ DigitalOcean หากคุณสมัครผ่านลิงก์ เจ้าของเว็บอาจได้รับเครดิต โดยคุณไม่เสียค่าใช้จ่ายเพิ่ม · อ่านนโยบายการรีวิว

Managed Database คืออะไร

Managed Database คือบริการที่ DigitalOcean ติดตั้ง ดูแล อัปเดต สำรองข้อมูล และตรวจสอบสถานะ ฐานข้อมูลให้คุณ คุณเพียงสร้างคลัสเตอร์ ได้ connection string แล้วเชื่อมต่อจากแอปได้ทันที เหมาะกับคนที่ไม่อยากเสี่ยงกับการดูแลฐานข้อมูลเอง ซึ่งเป็นส่วนที่ผิดพลาดแล้วเจ็บที่สุด (ข้อมูลหาย)

ตามหน้าราคาทางการ ณ 3 พ.ย. 2569 Managed Databases เริ่มต้น $15/เดือน และมี backup รายวันรวมอยู่ในราคา (ไม่คิดเพิ่มเหมือน backup ของ Droplet)

ฐานข้อมูลที่ให้บริการ

DigitalOcean เปิดให้บริการเอนจินหลายชนิด เช่น PostgreSQL, MySQL, ที่เก็บแบบ key-value ตระกูล Valkey (ที่ใช้โปรโตคอลแบบ Redis), MongoDB, Kafka และ OpenSearch รายการที่ให้บริการและเวอร์ชันที่รองรับอาจเปลี่ยนไป ตรวจดูที่หน้าผลิตภัณฑ์ Managed Databases ก่อนเลือก

ทำไมควรใช้ Managed Database

  1. ไม่ต้องดูแล patch และอัปเกรด ระบบจัดการช่วงบำรุงรักษาให้
  2. Backup รายวันอัตโนมัติ รวมอยู่ในราคา
  3. High Availability เพิ่ม standby node เพื่อให้สลับอัตโนมัติเมื่อเครื่องหลักล้ม (มีค่าใช้จ่ายเพิ่มสำหรับ node เสริม)
  4. ปลอดภัยโดยค่าเริ่มต้น เชื่อมต่อผ่าน SSL/TLS และจำกัดผู้เข้าถึงด้วย Trusted Sources
  5. ขยายได้ ขยายขนาดเครื่องหรือเพิ่ม read replica เมื่อโหลดเพิ่ม
  6. เหมาะกับ App Platform และ Kubernetes เชื่อมกันภายใน VPC ได้สะดวก

เทียบกับการติดตั้งฐานข้อมูลเองบน Droplet

หัวข้อManaged Databaseติดตั้งเองบน Droplet
ค่าใช้จ่ายเริ่มต้นเริ่ม $15/เดือนใช้ทรัพยากรของ Droplet ที่มีอยู่ (ถูกกว่า)
การดูแลDigitalOcean ดูแลคุณดูแลเองทั้งหมด
Backupรายวัน รวมในราคาต้องตั้งเอง
High Availabilityเพิ่ม standby ได้ง่ายต้องออกแบบและตั้งค่าเอง
ปรับแต่งลึกจำกัดบางส่วนทำได้ทุกอย่าง
เหมาะกับงานที่ข้อมูลสำคัญ ทีมเล็กงบจำกัด โปรเจกต์เล็ก คุมเองได้

หลักคิด: ถ้าข้อมูลคือหัวใจของธุรกิจ (ร้านค้าออนไลน์ ระบบสมาชิก) และคุณไม่ใช่ DBA ให้ใช้ Managed Database แต่ถ้าเป็นบล็อกหรือโปรเจกต์ทดลอง ติดตั้งบนเครื่องเดียวกันก็เพียงพอ ขอเพียงมี backup ดู คู่มือความปลอดภัยเซิร์ฟเวอร์

รับเครดิตฟรี $200 (ใช้ได้ 60 วัน)สมัคร DigitalOcean ผ่านลิงก์แนะนำของเรา แล้วเพิ่มวิธีชำระเงินที่ใช้งานได้ ระบบจะให้เครดิตทดลองใช้งาน ตามเงื่อนไขของ DigitalOcean ณ วันที่สมัคร
สมัครรับเครดิต $200 →

วิธีสร้างและเชื่อมต่อ (ตัวอย่าง PostgreSQL)

ขั้นที่ 1: สร้างคลัสเตอร์

  1. Control Panel → Create → Databases
  2. เลือกเอนจิน (เช่น PostgreSQL) และเวอร์ชัน
  3. เลือกภูมิภาค เดียวกับ Droplet/แอป ของคุณ (เช่น สิงคโปร์) เพื่อความหน่วงต่ำและเชื่อมกันผ่าน private network
  4. เลือกขนาดแผนและจำนวน node (1 = ไม่มี standby)
  5. ตั้งชื่อ และกด Create ใช้เวลาไม่กี่นาที

ขั้นที่ 2: ตั้ง Trusted Sources

ในแท็บ Settings → Trusted Sources เพิ่ม Droplet หรือ tag ที่อนุญาตให้เชื่อมต่อ หากไม่ตั้ง คลัสเตอร์อาจรับการเชื่อมต่อจากทุกที่ที่มีรหัสผ่าน ซึ่งไม่ปลอดภัย

ขั้นที่ 3: เชื่อมต่อ

ในหน้าคลัสเตอร์มี Connection Details (host, port, user, password, database, sslmode) คัดลอก connection string ไปใช้

psql "postgresql://doadmin:รหัสผ่าน@host-xxxx.db.ondigitalocean.com:25060/defaultdb?sslmode=require"

พอร์ตและรูปแบบ URL ให้ใช้ค่าที่หน้า Connection Details แสดง ซึ่งอาจต่างกันตามเอนจิน

ขั้นที่ 4: สร้างผู้ใช้และฐานข้อมูลแยกต่อแอป

อย่าใช้บัญชี doadmin ในแอปทุกตัว สร้างผู้ใช้เฉพาะต่อแอปด้วยสิทธิ์น้อยที่สุด

CREATE USER app1 WITH PASSWORD 'รหัสผ่านที่แข็งแรง';
CREATE DATABASE app1_db OWNER app1;

ขั้นที่ 5: ใช้ Connection Pool (PostgreSQL)

PostgreSQL มีขีดจำกัดจำนวนการเชื่อมต่อ ถ้าแอปเปิด connection จำนวนมาก (เช่น serverless หรือ PHP) ให้เปิด Connection Pool ของ DigitalOcean และเชื่อมต่อผ่านพอร์ตของ pool แทน

การเชื่อมต่อจากแอปยอดนิยม

Node.js (pg)

const { Pool } = require('pg');
const pool = new Pool({ connectionString: process.env.DATABASE_URL, ssl: { rejectUnauthorized: true, ca: process.env.DB_CA } });

ดาวน์โหลด CA certificate จากหน้า Connection Details เพื่อตรวจใบรับรองให้ครบ ไม่ควรปิดการตรวจสอบใบรับรองใน production

WordPress (MySQL)

กำหนดใน wp-config.php ให้ DB_HOST เป็น host:port ของคลัสเตอร์ และเพิ่ม define('MYSQL_CLIENT_FLAGS', MYSQLI_CLIENT_SSL); ตามเอกสาร หากเปิด SSL บังคับ

การสำรองและกู้คืน

  • Backup รายวันถูกเก็บให้อัตโนมัติ (จำนวนวันที่เก็บและความสามารถ point-in-time recovery ขึ้นกับเอนจินและแผน ตรวจสอบเอกสารล่าสุด)
  • ทดลอง Fork คลัสเตอร์จาก backup เพื่อทดสอบการกู้คืนโดยไม่กระทบระบบจริง
  • นอกจากนี้ควรทำ pg_dump/mysqldump เป็นระยะเก็บภายนอก ตามกฎ 3-2-1

ข้อควรระวัง

  1. เลือกภูมิภาคให้ถูก ไม่สามารถย้ายภูมิภาคโดยตรง ต้อง dump/restore หรือ fork ตามความสามารถของเอนจิน
  2. ขนาดดิสก์ ขึ้นกับแผนที่เลือก ตรวจเพดานและวิธีขยาย
  3. ต้นทุน standby และ replica แต่ละ node คิดค่าบริการ
  4. ช่วง maintenance กำหนดเวลาบำรุงรักษาให้ตรงช่วงที่ผู้ใช้น้อย (เช่น ตี 2-4 เวลาไทย)
  5. การเชื่อมต่อข้ามภูมิภาค ช้าและคิด bandwidth ควรอยู่ภูมิภาคเดียวกัน

เคล็ดลับประหยัด

  • เริ่มด้วยแผนเล็กสุดและขยายเมื่อต้องการ
  • ไม่เปิด standby ในสภาพแวดล้อม dev/test
  • ลบคลัสเตอร์ทดลองทันที
  • ใช้ dev database ฟรีของ App Platform สำหรับทดลอง (ถ้ามีในแผน) ดู คู่มือ App Platform
  • อ่านเทคนิคเพิ่มเติมที่ 15 วิธีลดค่าใช้จ่าย DigitalOcean

คำถามที่พบบ่อย

ใช้ฟรีได้ไหม

ไม่มีแผนฟรีถาวรสำหรับ Managed Database ตามหน้าราคา เริ่ม $15/เดือน แต่ผู้ใช้ใหม่ใช้เครดิตทดลองได้ ดู วิธีรับเครดิตฟรี $200 DigitalOcean

ย้ายข้อมูลจากฐานข้อมูลเดิมมาอย่างไร

ใช้ pg_dump/pg_restore สำหรับ PostgreSQL หรือ mysqldump สำหรับ MySQL นำเข้าไปยังคลัสเตอร์ใหม่ หรือใช้เครื่องมือ migration ที่ DigitalOcean มีให้สำหรับบางเอนจิน

ใช้ Managed Database กับ Droplet ต่างภูมิภาคได้ไหม

ทำได้ผ่านอินเทอร์เน็ตสาธารณะ แต่ไม่แนะนำ เพราะความหน่วงสูงและปลอดภัยน้อยกว่าการใช้ VPC ในภูมิภาคเดียวกัน

รับเครดิตฟรี $200 (ใช้ได้ 60 วัน)สมัคร DigitalOcean ผ่านลิงก์แนะนำของเรา แล้วเพิ่มวิธีชำระเงินที่ใช้งานได้ ระบบจะให้เครดิตทดลองใช้งาน ตามเงื่อนไขของ DigitalOcean ณ วันที่สมัคร
สมัครรับเครดิต $200 →