MariaDB คืออะไร และวิธีติดตั้งบน Cloud Server
MariaDB คือฐานข้อมูลเชิงสัมพันธ์ที่แยกสายมาจาก MySQL โดยทีมผู้พัฒนาดั้งเดิม ยังคงใช้คำสั่ง SQL และเครื่องมือเดิมได้เกือบทั้งหมด แต่พัฒนาโดยชุมชนแบบเปิดเต็มตัว
- หมวดหมู่
- ฐานข้อมูล
- ติดตั้งบนเซิร์ฟเวอร์เองได้
- ได้
- สเปกเริ่มต้นที่แนะนำ
- 2 vCPU · RAM 4 GB
- ไลเซนส์
- GPLv2 (โอเพนซอร์ส)
- เว็บทางการ
- เปิดเว็บไซต์
- ISO/IEC 27001
- ISO 22301
- ISO 20000-1
- CSA-STAR
Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย
MariaDB คืออะไร
MariaDB เกิดขึ้นหลัง MySQL เปลี่ยนมือเจ้าของ โดยทีมผู้สร้างเดิมต้องการให้มีทางเลือกที่เป็นโอเพนซอร์สอย่างแท้จริง ผลคือฐานข้อมูลที่เข้ากันได้กับ MySQL ในระดับที่แอปส่วนใหญ่ย้ายมาได้โดยไม่ต้องแก้โค้ด
ระบบโอเพนซอร์สยอดนิยมจำนวนมาก เช่น WordPress, Nextcloud และ Zabbix ระบุ MariaDB เป็นตัวเลือกหลักในเอกสาร และลินุกซ์หลายค่ายก็ให้ MariaDB เป็นแพ็กเกจมาตรฐานในที่เก็บของตัวเอง
ความต่างที่เห็นได้ชัดคือ MariaDB มีเอนจินจัดเก็บให้เลือกมากกว่า เช่น Aria และ ColumnStore สำหรับงานวิเคราะห์ และมีการพัฒนาฟีเจอร์บางอย่างเร็วกว่า แต่ถ้าใช้งานพื้นฐานทั่วไปจะแทบไม่รู้สึกถึงความต่าง
ความสามารถเด่นของ MariaDB
เข้ากันได้กับ MySQL
ใช้คำสั่ง เครื่องมือ และไลบรารีเดิมได้ ทำให้ย้ายระบบมาได้โดยแทบไม่ต้องแก้แอป
โอเพนซอร์สเต็มรูปแบบ
ไม่มีฟีเจอร์ที่ถูกกันไว้ให้เฉพาะรุ่นเชิงพาณิชย์ องค์กรจึงคาดการณ์ต้นทุนได้
เอนจินจัดเก็บหลากหลาย
เลือกใช้ InnoDB สำหรับงานทั่วไป หรือเอนจินเฉพาะทางสำหรับงานวิเคราะห์
Galera Cluster
ทำคลัสเตอร์แบบเขียนได้หลายโหนดพร้อมกัน สำหรับระบบที่ต้องการความพร้อมใช้งานสูง
ใช้ MariaDB ทำอะไรได้บ้าง
- ฐานข้อมูลของ WordPress, Nextcloud, Zabbix และซอฟต์แวร์โอเพนซอร์สอื่น
- ระบบที่ต้องการหลีกเลี่ยงการผูกกับผู้ขายรายเดียว
- องค์กรที่ต้องการคลัสเตอร์ฐานข้อมูลแบบหลายโหนดด้วย Galera
- งานที่ย้ายมาจาก MySQL เพื่อลดข้อจำกัดด้านไลเซนส์
สเปก Cloud Server ที่แนะนำ
| ระดับการใช้งาน | vCPU | RAM | Disk |
|---|---|---|---|
| เริ่มต้นเว็บเดียวหรือระบบภายในขนาดเล็ก | 2 vCPU | 4 GB | NVMe 40 GB |
| แนะนำฐานข้อมูลงานจริงที่มีผู้ใช้ต่อเนื่อง | 4 vCPU | 16 GB | NVMe 200 GB |
| ระบบใหญ่ฐานข้อมูลหลักหรือคลัสเตอร์ Galera สามโหนด | 8 vCPU ขึ้นไป | 32 GB ขึ้นไป | NVMe 500 GB ขึ้นไป |
ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ
วิธีติดตั้ง MariaDB บน Cloud Server ของ THAI DATA CLOUD
ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server
สิ่งที่ต้องเตรียม
- Ubuntu Server 24.04 LTS, Debian 12 หรือ Rocky Linux 9
- ดิสก์ NVMe และ RAM เพียงพอสำหรับ buffer pool
- Private Network ระหว่างเครื่องแอปกับเครื่องฐานข้อมูล
ทดสอบบน Ubuntu Server 24.04 LTS
- 1
ติดตั้ง MariaDB Server
sudo apt update sudo apt -y install mariadb-server sudo systemctl enable --now mariadb - 2
ตั้งค่าความปลอดภัยเบื้องต้น
sudo mariadb-secure-installation - 3
สร้างฐานข้อมูลและผู้ใช้
sudo mariadb -e "CREATE DATABASE appdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" sudo mariadb -e "CREATE USER 'appuser'@'10.10.0.%' IDENTIFIED BY 'ChangeThisStrongPassword';" sudo mariadb -e "GRANT ALL PRIVILEGES ON appdb.* TO 'appuser'@'10.10.0.%'; FLUSH PRIVILEGES;" - 4
จูนค่าใน /etc/mysql/mariadb.conf.d/50-server.cnf
[mysqld] bind-address = 10.10.0.20 innodb_buffer_pool_size = 8G innodb_flush_log_at_trx_commit = 1 max_connections = 300 slow_query_log = 1 long_query_time = 1 - 5
รีสตาร์ตและตรวจสอบ
sudo systemctl restart mariadb sudo mariadb -e "SELECT VERSION(); SHOW VARIABLES LIKE 'innodb_buffer_pool_size';" - 6
ตั้งการสำรองข้อมูลด้วย mariabackup
เหมาะกับฐานข้อมูลขนาดใหญ่เพราะสำรองระดับไฟล์และไม่ล็อกตารางนาน
sudo apt -y install mariadb-backup sudo mariabackup --backup --target-dir=/var/backups/mariadb/$(date +%F) --user=root
พอร์ตที่ต้องเปิดบน Firewall
| พอร์ต | โปรโตคอล | ใช้ทำอะไร |
|---|---|---|
| 3306 | TCP | การเชื่อมต่อฐานข้อมูล (เปิดเฉพาะวงภายใน) |
| 4567 | TCP/UDP | การสื่อสารของ Galera Cluster (เฉพาะเมื่อทำคลัสเตอร์) |
สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ
- ผูกบริการกับไอพีภายในและไม่เปิดสู่อินเทอร์เน็ต
- จำกัดผู้ใช้ฐานข้อมูลให้เชื่อมต่อได้เฉพาะจากช่วงไอพีของแอป
- เปิด TLS สำหรับการเชื่อมต่อข้ามเครื่อง
- ตรวจสอบสิทธิ์ผู้ใช้เป็นระยะและลบบัญชีที่ไม่ใช้แล้ว
- เก็บสำเนาสำรองไว้คนละไซต์กับเครื่องหลัก
ทำไมควรรัน MariaDB บน Cloud Server ของ THAI DATA CLOUD
Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง
ติดตั้งได้จากที่เก็บแพ็กเกจมาตรฐานของ Ubuntu จึงขึ้นระบบใหม่บน Cloud Server ได้ในไม่กี่นาที
ทำ Replication ไปยัง Cloud Server อีกเครื่องในวงภายในเพื่อกระจายภาระการอ่านและใช้เป็นสำรอง
ปรับสเปกได้ตามการเติบโตของข้อมูล โดยไม่ต้องซื้อเครื่องเผื่ออนาคต
คำถามที่พบบ่อยเกี่ยวกับ MariaDB
ย้ายจาก MySQL มา MariaDB ต้องแก้แอปไหม
ส่วนใหญ่ไม่ต้อง เพราะโปรโตคอลและคำสั่งเข้ากันได้ วิธีที่ปลอดภัยคือดัมป์ข้อมูลจาก MySQL แล้วนำเข้า MariaDB บนเครื่องทดสอบ รันชุดทดสอบของแอปให้ครบก่อนเปลี่ยนของจริง
Galera Cluster เหมาะกับงานแบบไหน
เหมาะกับระบบที่ต้องการให้ฐานข้อมูลไม่ล่มแม้เครื่องหนึ่งดับ และมีทราฟฟิกอ่านมากกว่าเขียน ต้องมีอย่างน้อยสามโหนดและเครือข่ายภายในที่หน่วงต่ำ ซึ่ง Private Network ในไทยตอบโจทย์นี้ได้
MariaDB เร็วกว่า MySQL จริงไหม
ขึ้นกับรูปแบบงานและเวอร์ชันที่เทียบ ในงานเว็บทั่วไปความต่างมักไม่มีนัยสำคัญเมื่อเทียบกับผลของการทำดัชนีให้ถูกต้องและการตั้ง buffer pool ให้เหมาะสม
ทางเลือกอื่นที่คล้ายกับ MariaDB
แอปอื่นในหมวด ฐานข้อมูล
บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง
ให้เราติดตั้ง MariaDB ให้ฟรี บน Cloud Server ในไทย
แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด