Cara Upgrade & Migrasi MySQL/MariaDB di ServBay
Gambaran Umum
Selama proses pengembangan lokal, Anda mungkin perlu mengganti versi default MySQL atau MariaDB pada lingkungan ServBay Anda berdasarkan kebutuhan proyek ataupun untuk memperoleh fitur terbaru, patch keamanan, dan pembaruan lainnya. Dokumen ini memberikan panduan langkah demi langkah yang jelas dan detail untuk membantu Anda menyelesaikan proses ini dengan aman, termasuk tahap-tahap penting seperti backup dan pemulihan data.
Skenario Penggunaan
- Upgrade ke versi terbaru: Dapatkan fitur baru, peningkatan performa, dan patch keamanan.
- Uji kompatibilitas proyek: Memastikan aplikasi Anda berjalan baik di berbagai versi database.
- Memenuhi dependensi proyek tertentu: Beberapa proyek mungkin membutuhkan versi database tertentu secara spesifik.
Prasyarat
- ServBay sudah terinstal dan berjalan.
- Memahami dasar penggunaan Terminal/Command Line.
- Mengetahui password user
root
pada database Anda. - Memiliki cukup ruang disk untuk melakukan instalasi versi baru dan menyimpan backup database.
Langkah-Langkah Operasional
Berikut ini contoh detail proses pergantian versi menggunakan migrasi dari MariaDB 10.11 ke MariaDB 11.3. Untuk MySQL, langkah-langkahnya hampir sama.
1. Backup Database Versi Lama
Sebelum mengganti versi, sangat disarankan melakukan backup penuh seluruh data pada database Anda. Cara ini mencegah kehilangan data dan memberikan titik pemulihan jika terjadi masalah kompatibilitas.
Backup database paling standar dilakukan dengan alat mysqldump
. Buka Terminal Anda dan jalankan perintah berikut:
bash
mysqldump -uroot -p --all-databases --opt > mariadb_backup.sql
1
-u root
: Menggunakan userroot
untuk koneksi ke database.-p
: Akan meminta Anda memasukkan password userroot
.--all-databases
: Membackup seluruh database yang ada.--opt
: Pilihan umum yang terdiri dari beberapa opsi seperti--add-drop-table
,--add-locks
,--create-command
,--disable-keys
,--extended-insert
,--lock-tables
,--quick
,--set-charset
, untuk menghasilkan file backup yang efisien dan portabel.> mariadb_backup.sql
: Backup akan disimpan sebagai filemariadb_backup.sql
di folder ketika Anda menjalankan perintah, biasanya di home directory Anda (~
).
Setelah menjalankan perintah di atas, masukan password user root
saat diminta. Tunggu hingga proses selesai, tidak akan banyak output hingga prompt kembali muncul. Pastikan file mariadb_backup.sql
tidak kosong.
2. Instalasi Versi Baru
Buka aplikasi ServBay. Arahkan ke tab Packages. Pada kategori database, cari MariaDB atau MySQL, pilih versi database yang ingin Anda gunakan (misal MariaDB 11.3), lalu klik tombol install.
Tunggu hingga proses download dan instalasi selesai sepenuhnya.
3. Nonaktifkan Database Versi Lama
Jika versi baru sudah terinstall, kembali ke tab Packages di ServBay. Cari database versi lama yang sedang berjalan (misal MariaDB 10.11). Klik indikator status di sampingnya (biasanya ikon lingkaran hijau) untuk menonaktifkannya. Indikator berubah menjadi abu-abu.
4. Aktifkan Database Versi Baru
Setelah menonaktifkan versi lama, silakan cari database versi baru (misal MariaDB 11.3) yang baru saja Anda install. Klik indikator status agar database aktif. Indikator berubah menjadi hijau, menandakan database telah sukses dijalankan.
5. Atur Versi Baru Sebagai Default
Mengaktifkan versi baru dan menonaktifkan versi lama saja belum cukup untuk menjadikan database tersebut sebagai default. Anda perlu mengatur secara eksplisit versi mana yang menjadi default melalui pengaturan ServBay.
Buka panel Settings di aplikasi ServBay. Pada bagian pengaturan database, cari pilihan database default untuk MySQL atau MariaDB. Pilih versi baru yang barusan Anda aktifkan (misal MariaDB 11.3) dari dropdown.
Klik tombol Apply di bagian bawah panel untuk menyimpan perubahan.
6. Konfirmasi Pengaturan Default Berhasil
Kembali ke panel Packages di ServBay. Anda akan melihat tanda bahwa versi baru (misal MariaDB 11.3) sudah menjadi default.
7. Verifikasi di Terminal
Buka Terminal, jalankan perintah berikut untuk memastikan versi default database sudah berubah:
bash
mysql -V
1
Output yang muncul seharusnya menampilkan info versi baru yang sudah Anda atur, misal mysql Ver 11.3.2-MariaDB ...
.
8. Restore Backup Database
Selanjutnya, pulihkan data yang sudah di-backup tadi ke database versi baru. Di Terminal, jalankan:
bash
mysql -uroot -p < mariadb_backup.sql
1
-u root
: Menggunakan userroot
untuk koneksi database.-p
: Akan meminta password userroot
.< mariadb_backup.sql
: Menggunakan isi filemariadb_backup.sql
sebagai input ke klienmysql
untuk melakukan restore.
Setelah menjalankan perintah tersebut, masukkan password untuk user root
pada versi database yang baru (biasanya sama dengan sebelumnya, kecuali Anda telah mengganti password setelah pertama kali menginstall versi baru). Proses restore bisa memakan waktu sesuai ukuran backup.
Perhatian: Selama restore, Terminal bisa saja menampilkan beberapa peringatan atau error—terutama jika terdapat perbedaan kompatibilitas antara versi lama dan baru, atau jika backup berisi fitur khusus dari versi lama (seperti engine storage tertentu, fungsi, atau klausa DEFINER
). Untuk kebanyakan kebutuhan web development umum, peringatan ini biasanya bisa diabaikan, namun untuk aplikasi produksi atau kompleks, Anda sebaiknya periksa dan tangani isu-isu tersebut dengan cermat.
9. Pastikan Data Pulih Sempurna
Setelah restore selesai, login ke database untuk memastikan seluruh data pulih:
bash
mysql -uroot -p
1
Setelah memasukkan password, Anda akan masuk ke klien MariaDB/MySQL. Jalankan:
sql
SHOW DATABASES;
1
Selanjutnya, cek database dan tabel yang dibutuhkan, serta lakukan query untuk memastikan semua data telah ter-restore dengan benar dan aplikasi Anda dapat terhubung ke database seperti biasa.
Hal yang Perlu Diperhatikan
- Kompatibilitas data: Meski MySQL/MariaDB berusaha menjaga kompatibilitas, upgrade major version (misal 5.7 ke 8.0, atau MariaDB 10.x ke 11.x) bisa saja menimbulkan perubahan yang tidak kompatibel. Pastikan untuk membaca dokumentasi resmi mengenai notes kompatibilitas antar versi sebelum melakukan upgrade.
- Berkas konfigurasi: ServBay menyediakan file konfigurasi terpisah untuk tiap versi database (
my.cnf
ataumy.ini
). Bila Anda sudah melakukan custom setting pada versi lama, migrasikan perubahan ini secara manual ke file konfigurasi versi baru. File ini biasanya ada di dalam folder instalasi ServBay (misal/Applications/ServBay/etc/mysql/versi/my.cnf
). - Performa: Database versi baru bisa saja memiliki konfigurasi default atau optimasi internal yang berbeda. Setelah upgrade, lakukan pengujian performa pada aplikasi Anda dan sesuaikan konfigurasi jika dibutuhkan.
- Port: Secara default, semua versi database pada ServBay berjalan di port standar (biasanya 3306). Mengganti default version tidak akan mengubah port. Jika ingin beberapa versi berjalan bersamaan di port berbeda, perlu melakukan modifikasi manual di file konfigurasi.
FAQ (Pertanyaan Umum)
- Q: Versi database yang baru diinstall tidak bisa dijalankan, apa solusinya?
- A: Periksa indikator status dan file log pada panel Packages ServBay. Log database umumnya berada di folder
var/log/mysql
atauvar/log/mariadb
di dalam instalasi ServBay. Cek log untuk mendiagnosis error seperti kesalahan konfigurasi, konflik port, atau masalah permission.
- A: Periksa indikator status dan file log pada panel Packages ServBay. Log database umumnya berada di folder
- Q: Muncul error saat restore database, apa yang perlu saya lakukan?
- A: Baca pesan error secara detail. Error umum misalnya masalah character set (tambahkan opsi seperti
--default-character-set=utf8mb4
padamysqldump
), problem pada hak aksesDEFINER
(bisa batch-edit di file backup), atau file backup rusak. Untuk database besar, bisa gunakan tools sepertimydumper
/myloader
untuk backup dan restore paralel.
- A: Baca pesan error secara detail. Error umum misalnya masalah character set (tambahkan opsi seperti
- Q: Apakah saya bisa langsung ganti versi tanpa backup-restore?
- A: Tidak disarankan, terutama untuk upgrade major version. Langsung mengganti dapat menyebabkan ketidakcocokan struktur data, kehilangan, atau kerusakan data. Backup-restore tetap cara paling aman dan dapat diandalkan.
- Q: Setelah ganti versi, situs/aplikasi tidak bisa konek database?
- A: Pastikan database versi baru sudah aktif dan dijadikan default di ServBay. Periksa pengaturan koneksi database pada aplikasi Anda—hostname (biasanya
127.0.0.1
ataulocalhost
), port (default 3306), username, dan password.
- A: Pastikan database versi baru sudah aktif dan dijadikan default di ServBay. Periksa pengaturan koneksi database pada aplikasi Anda—hostname (biasanya
Ringkasan
Dengan mengikuti langkah-langkah pada panduan ini, Anda dapat berganti versi default MySQL atau MariaDB secara aman dan lancar di lingkungan ServBay. Proses inti meliputi backup data, instalasi dan aktivasi versi baru, pengaturan default di ServBay, serta pemulihan data. Pastikan selalu melakukan backup sebelum upgrade dan verifikasi data serta fungsi aplikasi setelah migrasi.