GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara mengatur cron untuk mengambil Cadangan Basis Data MySQL setiap hari dan menghapus file cadangan yang lebih lama yang lebih dari 10 hari?

  1. Masuk ke server Linux Anda menggunakan ssh.

  2. Buka crontab Anda menggunakan perintah di bawah ini

    Crontab -e
  3. Masukkan cronjob di bawah ini untuk mengambil cadangan basis data Anda setiap hari.

    00 12 * * * mysqldump -uroot -ppassword --opt accu_4 > /home/mysql_backup/accu_4-$( date +"\%Y_\%m_\%d" ).sql >> /dev/null 2>&1
  • 00 12 -- Ini menunjukkan bahwa cron akan mencadangkan database mysql pada 12 jam dan 00 menit setiap hari.

  • Ubah accu_4 -- dengan nama database sebenarnya.

  • Ubah /home/mysql_backup/ -- dengan lokasi persis cadangan Anda.

  •  /dev/null 2>&1 -- Ini akan mengabaikan peringatan atau kesalahan apa pun yang diterima dengan cron Anda.

  1. Verifikasi cadangan di direktori cadangan Anda untuk memeriksa apakah cadangan berfungsi dengan baik.

Jika Anda menjalankan pencadangan basis data harian, Anda juga perlu menjalankan skrip yang dapat menghapus cadangan setelah jangka waktu tertentu atau skrip tersebut akan terus menambah ruang disk server Anda. Langkah-langkah berikut akan menghapus cadangan database setelah 10 hari dari direktori cadangan.

  1. Buat file menggunakan editor favorit Anda di lokasi /opt dan tambahkan kode di bawah ini di dalamnya.

    vi remove.sh
    find /home/mysql_backup/*.sql -mtime +10 -exec rm -rf {} \;
  1. Sekarang atur cronjob di bawah ini. Ini akan menghapus file cadangan selama lebih dari 10 hari.

    00 13 * * * cd /opt/ && sh remove.sh

Linux
  1. Cara Mencadangkan dan Memulihkan Basis Data Postgres

  2. Bagaimana cara Menghapus semua file yang lebih lama dari X jumlah Hari di Linux?

  3. Bagaimana Cara Mengatur Lokal Dan Apa Implikasinya?

  1. Bagaimana Cara Membuat Cron Job Yang Secara Otomatis Menghapus File Yang Lebih Lama Dari 30 Hari?

  2. Bagaimana cara menghapus file yang berukuran lebih dari 100 MB di dalam folder public_html di server cPanel?

  3. Cara Menghapus File Yang Lebih Lama Dari n Hari TANPA Menggunakan Perintah find

  1. Bagaimana Menghitung Jumlah File Dalam Sebuah Direktori Dan Menghapus Yang Terlama Jika Jumlahnya Melebihi 5?

  2. cara masuk ke mysql dan menanyakan database dari terminal linux

  3. Hibernate + MySQL:Cara mengatur pengkodean utf-8 untuk database dan tabel