Sedangkan mysqldump
tool adalah metode pencadangan yang lebih disukai untuk database MariaDB atau MySQL atau sistem database. Alat ini hanya berfungsi ketika server database dapat diakses dan berjalan. Jika database tidak dapat dijalankan atau sistem host tidak dapat diakses, database masih dapat disalin secara langsung.
Cadangan fisik sering kali diperlukan dalam situasi ketika Anda hanya memiliki akses ke lingkungan pemulihan (seperti Finnix) di mana Anda memasang disk sistem Anda sebagai perangkat penyimpanan eksternal. Jika Anda ingin membaca tentang pencadangan logis menggunakan mysqldump
,lihat panduan kami tentang topik tersebut.
Untuk penyederhanaan, nama MySQL akan digunakan di seluruh panduan ini tetapi petunjuknya akan berfungsi untuk MySQL dan MariaDB.
Catatan Langkah-langkah dalam panduan ini memerlukan hak akses root. Masuk sebagai pengguna root dengan su -
sebelum Anda mulai.
Buat Cadangan
-
Jika Anda tidak berjalan dalam mode pemulihan (sesi Finnix), hentikan
mysql
layanan:systemctl stop mysql
-
Temukan direktori basis data Anda. Seharusnya
/var/lib/mysql/
pada kebanyakan sistem tetapi jika direktori itu tidak ada, periksa/etc/mysql/my.cnf
untuk jalur ke direktori data. -
Buat direktori untuk menyimpan cadangan Anda. Panduan ini akan menggunakan
/opt/db-backups
tetapi Anda dapat mengubah ini sesuai dengan kebutuhan Anda:mkdir /opt/db-backups
-
Salin direktori data MySQL ke lokasi penyimpanan.
cp
perintah,rsync
, atau metode lain akan berfungsi dengan baik, tetapi kami akan menggunakantar
untuk menyalin dan gzip cadangan secara rekursif sekaligus. Ubah direktori database, nama file cadangan, dan direktori target sesuai kebutuhan;-$(date +%F)
selain perintah akan memasukkan cap waktu ke dalam nama file.tar cfvz /opt/db-backups/db-$(date +%F).tar.gz /var/lib/mysql/*
-
Mulai ulang layanan MySQL:
systemctl restart mysql
Pulihkan Cadangan
-
Ubah direktori kerja Anda ke tempat Anda dapat mengekstrak tarball yang dibuat di atas. Direktori beranda pengguna saat ini digunakan dalam contoh ini:
cd
-
Hentikan
mysql
layanan:systemctl stop mysql
-
Ekstrak tarball ke direktori kerja. Ubah nama file tarball di perintah dengan tanggal yang ingin Anda pulihkan.
tar zxvf /opt/db-backups/db-archive.tar.gz -C .
-
Pindahkan konten
/var/lib/mysql
saat ini ke lokasi lain jika Anda ingin menyimpannya karena alasan apa pun, atau menghapusnya seluruhnya. Buatmysql
kosong baru folder untuk memulihkan DMBS yang telah dicadangkan.mv /var/lib/mysql /var/lib/mysql-old mkdir /var/lib/mysql
-
Salin sistem database yang dicadangkan ke folder kosong:
mv ~/var/lib/mysql/* /var/lib/mysql
-
Setel izin yang tepat untuk file yang baru saja Anda pulihkan:
chown -R mysql:mysql /var/lib/mysql
-
Mulai ulang layanan MySQL:
systemctl restart mysql
Informasi Lebih Lanjut
Anda mungkin ingin berkonsultasi dengan sumber daya berikut untuk informasi tambahan tentang topik ini. Meskipun ini disediakan dengan harapan dapat bermanfaat, harap perhatikan bahwa kami tidak dapat menjamin keakuratan atau ketepatan waktu materi yang dihosting secara eksternal.
- Ikhtisar Pencadangan dan Pemulihan; Perpustakaan MariaDB
- Metode Pencadangan Basis Data; Manual Referensi MySQL