Backup Database MariaDB di Terminal Linux
Berikut adalah cara untuk membackup database MariaDB dan MySQL di terminal linux.
Perintah di terminal linux untuk membackup 1 database.
mysqldump -u root -p myme_kalender > myme_kalender.sql; (enter)
setelah itu akan diminta password untuk masuk ke database
jika berhasil maka akan muncul file bernama myme_kalender.sql pada folder saat mengetikkan perintah diatas.
Perintah di terminal linux untuk membackup semua database.
mysqldump -u root -p --all-databases > backup_all_databases.sql;
setelah itu akan diminta password untuk masuk ke database.
jika berhasil maka akan muncul file bernama backup_all_databases.sql pada folder saat mengetikkan perintah diatas.
Perintah di terminal linux untuk merestore 1 database ke server lain.
Langkah-Langkah Restore Database di Server Lain
Salin File SQL ke Server Tujuan
Jika file `myme_kalender.sql` ada di komputer lokal dan ingin dipindahkan ke server tujuan, gunakan perintah seperti:
scp myme_kalender.sql user@ip_server_tujuan:/path/to/destination/
Contoh:
scp myme_kalender.sql [email protected]:/home/ubuntu/
Atau jika sudah ada di server tujuan, lewati langkah ini.
---
### 🗃️ 2. Buat Database Baru (Opsional tapi Direkomendasikan)
Login ke MariaDB:
```bash
mysql -u root -p
```
Lalu buat database baru (misalnya namanya `myme_kalender`) dengan perintah SQL:
```sql
CREATE DATABASE myme_kalender;
```
Keluar dari mysql shell:
```sql
exit;
```
---
### 💾 3. Restore File SQL ke Database
Gunakan perintah berikut untuk restore file `.sql` ke database:
```bash
mysql -u [username] -p [nama_database] < [lokasi_file_sql]
```
Contoh nyata:
```bash
mysql -u root -p myme_kalender < myme_kalender.sql
```
- Setelah mengetik perintah ini, kamu akan diminta memasukkan password user MariaDB.
- Proses restore bisa memakan waktu beberapa detik hingga beberapa menit tergantung ukuran file.
---
## 🛠️ Tambahan: Jika File Terkompres (contoh: .sql.gz)
Kalau filenya dalam format `.sql.gz`, ekstrak dulu atau langsung restore via pipe:
```bash
gunzip < myme_kalender.sql.gz | mysql -u root -p myme_kalender
```
---
## 🔍 Tips & Hal yang Perlu Diperhatikan
- Pastikan versi MariaDB/MySQL di server tujuan tidak terlalu jauh berbeda dengan versi asal backup agar tidak terjadi inkompatibilitas.
- Jika file backup menggunakan nama database tertentu di dalamnya, kamu bisa cek dengan membuka file `.sql` (jika tidak besar) untuk melihat baris seperti:
```sql
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `myme_kalender` ...
```
- Jika kamu tidak membuat database sebelumnya, perintah restore akan gagal kecuali file backup tersebut tidak mengandung struktur pembuatan database otomatis.
---
## 🔄 Bonus: Skrip Sederhana Restore
Kamu bisa buat skrip bash untuk restore lebih cepat:
```bash
#!/bin/bash
DB_USER="root"
DB_NAME="myme_kalender"
SQL_FILE="myme_kalender.sql"
mysql -u $DB_USER -p $DB_NAME < $SQL_FILE
echo "Restore selesai!"
```
Simpan sebagai `restore.sh`, lalu jalankan:
```bash
chmod +x restore.sh
./restore.sh
```
---
Kalau kamu butuh bantuan tambahan misalnya:
- Membuat database otomatis sebelum restore
- Backup+restore dengan user khusus
- Menjalankan restore tanpa interaksi password
Silakan kasih tahu ya 😊