Mencadangkan data MySQL sangat penting jika Anda menjalankan MySQL di server produksi apa pun. Kami akan menjelajahi beberapa konsep dasar yang memungkinkan Anda melakukan itu Show Kami tertarik pada dua jenis cadangan. penuh dan bertahap Cadangan lengkap dapat disimpan sebagai kumpulan kueri yang dapat memulihkan database (logis), atau salinan mentah direktori yang berisi data MySQL (fisik). Untuk database besar (>10GB), Anda mungkin ingin menggunakan opsi terakhir Anda dapat melakukannya dengan menggunakan alat seperti mysqlhotcopyfor MyISAM dan InnoDB Hot Backup atau Xtrabackup untuk tabel InnoDB. Dalam contoh ini kita akan membuat cadangan lengkap logis dengan perintah mysqldump Pencadangan tambahan dapat dilakukan dengan mencadangkan log biner MySQL Mari pastikan log biner diaktifkan. Edit MySQL milik saya. cnf config dan periksa baris ini log_bin = /var/log/mysql/mysql-bin. catatan Opsi pertama memberi tahu MySQL untuk mengaktifkan logging biner dan menyimpan log di bawah direktori /var/log/mysql/ Buat perubahan ini di my. cnf seperlunya dan restart server mysql Jika Anda melihat /var/log/mysql/ dir, Anda akan menemukan sesuatu seperti ini mysql@mysqlhost1$ ls -al /var/log/mysql/ mysql-bin. 000001 saat ini log aktif yang akan ditulis SQL untuk perubahan yang dilakukan pada semua /var/log/mysql/mysql-bin. indeks berisi daftar semua file log biner Sekarang, mari buat database pengujian BUAT DATABASE 'gsp_db'; Dan masukkan beberapa baris GUNAKAN 'gsp_db'; Cadangan Oke, ini adalah keadaan awal db kami yang sekarang akan melakukan pencadangan penuh dengan mysqldump mysqldump -uroot -p --all-databases --transaksi tunggal --flush-logs --master-data=2 > full_backup. sql (--transaksi tunggal akan membuang tabel InnoDB dalam status yang konsisten, --flush-logs akan ditutup Jika Anda melihat lagi di /var/log/mysql/ dir, Anda akan melihat bahwa file log baru dibuat (mysql-bin. 000002) mysql@mysqlhost1$ ls -al /var/log/mysql/ Mari sekarang masukkan lebih banyak baris ke dalam db GUNAKAN 'gsp_db'; Oke, sekarang saatnya melakukan backup tambahan. Ini cukup sederhana, kami hanya Untuk membersihkan log secara manual, jalankan perintah ini ########################################### mysqladmin -uroot -p flush-logs Log biner baru dibuat di /var/log/mysql/ mysql@mysqlhost1$ ls -al /var/log/mysql/ Dan kita hanya perlu menyimpan mysql-bin. 000002, karena berisi semua perubahan yang kami lakukan setelah pencadangan penuh kami Mari kita lihat bagaimana tampilan meja kita sekarang mysql> pilih * dari gsp_db_t1; Sekarang kami akan menghancurkan database dan mencoba memulihkannya dari cadangan mysql> jatuhkan basis data gsp_db; Pertama, dari cadangan penuh mysql@mysqlhost1$ mysql -u root -p mysql> buat basis data gsp_db; mysql@mysqlhost1$ mysql -u root -p gsp_db < full_backup. sql Ini adalah isi tabel sekarang mysql> pilih * dari gsp_db_t1; Sekarang kita hanya perlu menerapkan perubahan dari log biner Ada alat bernama mysqlbinlogyang menampilkan konten log dalam format teks mysql@mysqlhost1$ mysqlbinlog --stop-datetime="2010-09-05 10. 55. 44" mysql-bin. 000002. mysql -uroot -p gsp_db Apa saja jenis cadangan di MySQL?1. 1 Jenis Pencadangan dan Pemulihan . Pencadangan Fisik (Mentah) Versus Logis. . Pencadangan Online Versus Offline. . Pencadangan Lokal Versus Jarak Jauh. . Pencadangan Snapshot. . Pencadangan Penuh Versus Inkremental. . Pemulihan Penuh Versus Point-in-Time (Incremental). . Pemeliharaan Meja. . Penjadwalan Cadangan, Kompresi, dan Enkripsi Apakah Mysqldump merupakan cadangan panas?mysqldump juga merupakan opsi - perhatikan bahwa mysqldump bukan alat cadangan panas secara default (terutama jika tabel Anda menggunakan beberapa mesin penyimpanan .
Apakah Mysqldump mencadangkan prosedur tersimpan?Secara default, mysqldump akan mencadangkan semua pemicu tetapi BUKAN prosedur dan fungsi tersimpan . Jika Anda ingin memasukkan stored procedure dan trigger, Anda perlu menambahkan –routines dalam perintah backup Anda sebagai berikut. Perintah ini akan mencadangkan seluruh database termasuk prosedur tersimpan.
Apa itu cadangan di MySQL?Mysqldump adalah utilitas baris perintah yang digunakan untuk menghasilkan cadangan logis dari database MySQL . Ini menghasilkan Pernyataan SQL yang dapat digunakan untuk membuat ulang objek dan data database. Perintah juga dapat digunakan untuk menghasilkan keluaran dalam format XML, teks terbatas, atau CSV. |