Category Archive MariaDB

Byphunsanit

MySQL VS MariaDB

MySQL และ MariaDB ต่างก็เริ่มจากนักพัฒนาชุดเดียวกัน ก่อนจะแยกทางการกันเพราะ oracle จะซื้อ MySQL ไป ทำให้นักพัฒนาหลายคนแยกออกมาทำ MariaDB


โครงสร้างเมนู (Hierarchy)

  • MySQL: มักจะเน้นไปที่การแสดง Databases (Schemas) เป็นหลัก ส่วนการจัดการ User หรือระบบมักจะถูกซ่อนไว้ในเมนู Admin หรือต้องเข้าไปดูใน Database ชื่อ mysql โดยตรง
  • MariaDB: โปรแกรมจะแยกหมวดหมู่ชัดเจนกว่า โดยมีโฟลเดอร์ Users, Administer, และ System Info แยกออกมาให้เห็นในระดับบนสุด ทำให้จัดการเรื่องสิทธิ์ (Grants) หรือดูสถานะเซิร์ฟเวอร์ได้ง่ายขึ้น

ความแตกต่างเชิงเทคนิค (Object & Storage)

แม้ว่าคำสั่ง SQL ส่วนใหญ่จะใช้ร่วมกันได้ แต่ “ไส้ใน” ของ Object ต่างกันดังนี้ครับ:

หัวข้อMySQL (8.0+)MariaDB (Latest)
Data Dictionaryเก็บ Metadata ไว้ในไฟล์ .ibd (Transaction-safe)เก็บ Metadata ไว้ในไฟล์ .frm (แบบดั้งเดิม)
Default Storage EngineInnoDB (เน้นความถูกต้องของข้อมูลสูง)Aria หรือ InnoDB (เน้นความเร็วและการทำ Data Warehousing)
System Infoเน้นตาราง performance_schema และ sysเน้นตาราง information_schema และมีตัววัดผลที่อ่านง่ายกว่า
User Privilegesใช้ Role ได้ซับซ้อนกว่าในเวอร์ชัน 8.0มีระบบ Role ที่ใช้ง่ายและยืดหยุ่นมานานแล้ว

การแสดงผลใน image

  • ใน docker-mysql: คุณเห็น Database และ table ทันที เพราะโปรแกรมมองว่าเป็น Schema หลัก
  • ใน docker-mariadb: คุณเห็นโฟลเดอร์ Users โผล่มาให้กดได้เลย ซึ่งสะดวกมากถ้าคุณต้องการ “คลิกขวา” เพื่อเพิ่ม User หรือแก้ Grant แทนการพิมพ์คำสั่ง SQL ครับ

อ่านเพิ่มเติม