Bagi kamu pengguna database, terutama kaum open source maka biasanya menggunakan database MySQL atau PostgreSQL karena memang kedua database tersebut yang paling banyak dipilih. Namun kali ini kita tidak akan membahasa PostgreSQL tetapi kita akan melakukan perbandingan MySQL dan MariaDB.
Kedua database tersebut paling banyak digunakan, karena lebih mudah dan performanya juga sudah teruji untuk digunakan sebagai penyimpanan data pada aplikasi saat ini, terutama aplikasi berbasis web.
Apa sebenarnya MariaDB dan MySQL ?
MySQL adalah database yang paling tua, dimana dibuat pada pertengahan tahun 1990 dimana memiliki database relasional dan berbasis SQL (Structured Query Language) dan MySQL ini adalah database pertama yang berbasis open source. Namun semakin berkembangnya teknologi dan kebutuhan maka varian dari database tipe RDMS (Relational Database Management System) yang memiliki perbedaan namun tetap memiliki kesamaan dalan sintaks dan fungsinya maka database ini banyak dipilih.
MariaDB adalah turunan dari MySQL dimana memiliki fitur seperti usability, security dan performance yang tidak dimiliki oleh MySQL. Founder dari MariaDB menjamin bahwa MariaDB akan tetap open source dan tetap kompatibel dengan MySQL namun pada kenyataannya MariaDB memiliki kelebihan jika dibandingkan dengan MySQL.
Apa perbedaan MySQL dan MariaDB ?
MySQL dan MariaDB sebenarnya adalah satu saudara, namun jika dicermati ada beberapa perbedaan dari MySQL dan MariaDB jika dilihat dari beberapa aspek. Tidak ada masalah ketika data yang dibuat dan dimigrasikan antara keduanya, namun perbedaan yang mencolok dari kedua database tersebut adalah MariaDB lebih cepat jika dibandingkan dengan MySQL.
Secara detail perbedaan MySQL dan MariaDB
JSON, dimana mariadb bisa disajikan dalam format native JSON sesuai dengan RFC 7159 dimana terdapat efisiensi ketika mengakses data dengan menggunakan format JSON (Javascript Object Notation)
MySQL | MariaDB | |
JSON_ARRAY | ada | ada |
JSON_ARRAY_AGG | ada | ada |
JSON_EXISTS | tidak ada | ada |
JSON_OBJECT | ada | ada |
JSON_OBJECT_AGG | ada | ada |
JSON_VALUE | tidak ada | ada |
JSON_TABLE | ada | ada |
ISJSON | JSON_VALID | JSON_VALID |
SQL
MySQL dan MariaDB dua-duanya support untuk standar SQL tetapi MariaDB mendapatkan fitur lebih banyak jika dibandingkan dari MySQL dimana MariaDB support untuk sequences dimana MySQL tidak support.
MySQL | MariaDB | |
Sequences | tidak | ada |
Generated columns | ada | ada |
Invisible columns | ada | ada |
Views | ada | ada |
MySQL | MariaDB | |
Descending | ada | tidak |
Functional | ada | tidak |
Invisible | ada | tidak |
Authentifikasi
Khusus untuk yang satu ini MySQL versi 8.0 memang terdepan dalam masalah security, karena secara default mengimplementasikan algoritma SHA-256 dimana ini akan menambah keamanannya sedangkan MariaDB hanya support untuk authentifikasi dengan plugin
MySQL | MariaDB | |
PAM / LDAP / Kerberos / NTML Authentifikasi | ada | ada |
User / Group mapping | ada | ada |
Password Expiration | ada | ada |
Password reuse policy | ada | tidak |
Password strength validation | ada | ada |
Account locking | adaa | ada |
Enkripsi
MySQL menggunakan redo/undo dalam file logs (namun secara default tidak diaktifkan) sedangkan MariaDB menawarkan enkripsi dalam format binary dan tabel sementara.
Key Management
MariaDB sudah termasuk key dari AWS plugin secara default, dimana MySQL malah lebih support dan lebih banyak plugin untuk management cuma hanya ada di versi enterprise saja.