GNU/Linux >> Belajar Linux >  >> Linux

Cara menjadwalkan pencadangan basis data MySQL di Ubuntu

Melakukan pencadangan rutin adalah prosedur penting untuk semua jenis data. Tutorial ini akan membantu Anda mempelajari tentang beberapa alat yang paling sering digunakan untuk mencadangkan dan memulihkan database MySQL Anda.

Pertama, Anda harus terhubung ke server Anda melalui koneksi SSH. Jika Anda belum melakukannya, kami sarankan Anda mengikuti panduan kami untuk terhubung secara aman dengan SSH. Dalam kasus server lokal Anda dapat pergi ke titik berikutnya dan membuka terminal server Anda.

Gunakan mysqldump

Mysqldump adalah aplikasi yang selalu tersedia di setiap instalasi MySQL dan memungkinkan Anda untuk melakukan dump lengkap data Anda dalam format teks.

Sintaks perintahnya adalah sebagai berikut:

    $ mysqldump -u [username] -p [database] > backup.sql

Dengan menjalankan perintah ini, Anda akan menemukan cadangan database lengkap yang ditunjukkan dalam file backup.sql.

Untuk memulihkan cadangan, gunakan klien MySQL sebagai berikut:

    $ mysql -u [username] -p [database] < backup.sql

Bergantung pada ukuran database, file cadangan ini dapat mencapai ukuran yang signifikan, sehingga sulit untuk mentransfer atau menyalinnya. Untuk mengoptimalkan ukuran cadangan database, Anda dapat menggunakan gzip untuk mengompres file:

    $ mysqldump -u [username] -p [database] | gzip > backup.sql.gz

Jika diinginkan, Anda juga dapat secara otomatis menambahkan tanggal saat ini dalam nama file menggunakan:

    $ mysqldump -u [username] -p [database] | gzip > backup_$(date +%F.%H%M%S).sql.gz

Untuk memulihkan, gunakan sintaks berikut sebagai gantinya:

    $ mysql -u [username] -p [database] < backup.sql

Catatan tentang mysqldump:

Perlu diingat bahwa selama dump dan backup database, mysqldump tidak menjamin konsistensi data antar tabel. Jika operasi tulis terjadi selama pencadangan, cadangan yang diperoleh mungkin sebagian dan/atau rusak.

Untuk mencegah masalah ini, ada opsi khusus yang disediakan oleh aplikasi:

  • --lock-all-tables:memblokir semua operasi tulis di semua tabel di semua database

  • - lock-tables:opsi ini mengatur agar tabel database dicadangkan dalam mode hanya-baca.

Pilihan mana yang harus dipilih bergantung pada apakah Anda memiliki data yang terkait dengan beberapa basis data atau tidak. Dalam kebanyakan kasus --lock-tables adalah solusi ideal untuk menjamin integritas data untuk setiap database individu.

Otomatiskan mysqldump melalui crontab

Untuk membuat pencadangan berkala, Anda hanya perlu menambahkannya ke crontab sistem dengan memprogram, misalnya, sekali sehari. Pertama, buka crontab dengan memulai:

    $ sudo crontab -e

Sekarang tambahkan baris di akhir file sebagai berikut:

    00 23 * * * mysqldump -u [username] -p [database] | gzip > /home/utente/backup.sql.gz

Dengan menyimpan file, sistem akan membuat satu cadangan per hari (pukul 23:00) dalam direktori pengguna Anda, menimpa cadangan sebelumnya setiap hari.

Gunakan automysqlbackup

Selain menggunakan mysqldump dengan mengekspor cadangan secara manual, Anda dapat mengandalkan salah satu utilitas paling populer di industri ini:automysqlbackup.

Pertama, Anda perlu menginstal paket melalui apt-get:

    $ sudo apt-get install automysqlbackup

Setelah menyelesaikan instalasi, automysqlbackup akan melakukan backup harian di direktori /var/lib/automysqlbackup. Anda juga dapat memulai pencadangan secara manual dengan meluncurkan:

    $ sudo automysqlbackup

Setelah selesai, Anda dapat memverifikasi cadangan yang ada hanya dengan membuat daftar isi direktori:

    $ ls -R /var/lib/automysqlbackup/
    
    /var/lib/automysqlbackup/:
    
    daily  monthly  weekly
                    /var/lib/automysqlbackup/daily:
    
    exampledb  information_schema   performance_schema test  wordpress
                    /var/lib/automysqlbackup/daily/exampledb:
    
    exampledb_2019-08-03_06h48m.Sunday.sql.gz
    
    ...

Jika semuanya bekerja dengan baik, Anda akan melihat serangkaian file dengan ekstensi .sql.gz seperti yang ditunjukkan di atas.

Kami menyarankan Anda untuk secara berkala memeriksa cadangan terbaru yang dibuat dan memverifikasi bahwa semuanya berfungsi dengan baik.

Menyesuaikan cadangan automysql

Untuk mengubah frekuensi pencadangan automysqlbackup atau data akses yang diperlukan untuk mengakses database Anda, Anda dapat memodifikasi file konfigurasi di /etc/default/automysqlbackup.

Beberapa pengaturannya adalah:

  • USERNAME:nama pengguna yang digunakan untuk masuk ke db

  • SANDI:kata sandi basis data

  • DBHOST:Alamat IP atau nama host

  • DBNAMES:nama database yang akan di-backup

  • BACKUPDIR:Direktori untuk menyimpan backup

Setelah mengubah pengaturan yang diinginkan, simpan file untuk menerapkan perubahan.


Linux
  1. Cara menyalin database MySQL

  2. MySQL:Cara Backup (Dump) dan Restore Database Menggunakan mysqldump

  3. Cara Menginstal MySQL di Ubuntu 22.04

  1. Cara Membuat Backup Database MySQL Menggunakan mysqldump di Ubuntu 20.04

  2. Cara Menginstal Database MySQL di Ubuntu 20.04

  3. Gandakan Seluruh Database MySQL

  1. Cara Menginstal MySQL 8.0 di Ubuntu 18.04

  2. Cara Mencadangkan &Memulihkan Basis Data MySQL

  3. Cara Mencadangkan Basis Data MySQL Tunggal dari Baris Perintah