Bash Komut Dosyasını Kullanarak MySQL Veritabanını Otomatik Olarak Yedekleme

Bash Komut Dosyasini Kullanarak Mysql Veritabanini Otomatik Olarak Yedekleme



MySQL, ilişkisel veritabanlarını zahmetsizce depolamaya ve yönetmeye yardımcı olan popüler bir RDBMS'dir. Ayrıca, MySQL veritabanlarının mantıksal bir yedeğini oluşturmak için mysqldump istemci yardımcı programı sağlar. MySQL birden fazla dili ve platformu destekler; bu, Linux'ta yedeklemeler için mysqldump yardımcı programını kullanmak üzere Bash komut dosyası oluşturmayı kullanabileceğiniz anlamına gelir.

Bu kılavuz, adım adım Bash komut dosyası kullanılarak MySQL veritabanlarının otomatik olarak nasıl yedekleneceğini gösterecektir.

Bash Komut Dosyasını Kullanarak MySQL Veritabanını Otomatik Olarak Yedekleme Nasıl Yapılır?

MySQL veritabanının yedeği için bir Bash betiği oluşturun. Öncelikle terminali açın, bir dizin oluşturun ve şu komutları yazarak dizine gidin:







mkdir mysqlbackup

cd mysql yedekleme/

Çıktı, dizine başarıyla gittiğinizi gösterir:





“adlı bir bash betiği oluşturun. yedekleme.sh ” herhangi bir editör kullanarak, bu yazı için nano editör kullanılıyor:





nano yedekleme.sh

Bash betiği şunları yaratacaktır:



MySQL kimlik bilgilerini ve yedeklemek istediğiniz veritabanının adını sağlayın:

DB_USER='kullanıcı adı'

DB_PASS='şifre'

DB_

Yedekleme dizinini ayarlayın ' BACKUP_DIR ” yedekleme dosyasının kaydedilmesi gereken konumu sağlayarak:

BACKUP_DIR='/path/to/your/backup/directory'

Yedekleme dosyasının adı için tarih biçimini ayarlayın:

TARİH=$(tarih +'%Y-%m-%d_%H-%M-%S')

SQL yedekleme dosyasını oluşturmak için bu mysqldump komutunu MySQL veritabanı kimlik bilgileriyle kullanın:

mysqldump --user=$DB_USER --password=$DB_PASS $DB_NAME > $BACKUP_DIR/$DB_NAME-$DATE.sql

SQL yedekleme dosyasını gzip aracıyla sıkıştırmak için şu komutu kullanın:

gzip $BACKUP_DIR/$DB_NAME-$DATE.sql

Disk alanından tasarruf etmek için, eski yedekleme dosyalarını bir süre sonra kaldırın, bu süre için ' 7 ” günlük yedekleme dosyası şu komut kullanılarak kaldırılacaktır:

$BACKUP_DIR'ı bul - f -adını yaz '*.gz' -mtime +7 -delete

Dosyayı kaydedin ve ' tuşuna basarak nano düzenleyiciden çıkın. CTRL + X ' anahtarlar:

Bu komutu çalıştırarak bash betiğinin izinlerini çalıştırılabilir olarak değiştirin:

chmod +x yedekleme.sh

Hatasız çıktı, komutun yürütülmesinin başarılı olduğu anlamına gelir:

Bu bash komutunu kullanarak betiği çalıştırın:

sudo bash yedekleme.sh

Ubuntu şifresini yazın ve “ ls Yedekleme dosyasının oluşturulup oluşturulmadığını doğrulamak için ” komutu:

Yedekleme dosyası, bash betiği kullanılarak başarıyla oluşturuldu. Şimdi “ kullanarak yedekleme işlemini otomatikleştirmek için kron ” iş zamanlayıcı yardımcı programı. Yeni bir cron işi göndermek için “ -Bu ” crontab ile seçenek:

crontab-e

Bash betiğinin otomatik olarak çalıştırılacağı zamanı ayarlayın. Bu yazı için “ 02:00 Komut dosyasını otomatik olarak çalıştırmak için ” seçilir:

0 2 * * * /yol/to/backup_mysql.sh

Dosyayı kaydedin ve çıkın:

Her “” sonrasında veritabanınızı yedeklemek istiyorsanız başka bir komut görelim. 5 dakika ” şunu yazın ve dosyayı kaydedin:

*/5 * * * * /yol/to/backup_mysql.sh

Crontab'ın işi başarıyla oluşturması biraz zaman alacaktır:

' Sonra otomatik olarak oluşturulan yedekleme dosyaları için dizini kontrol edin. 02:00 ', kullanmak ' ls ' emretmek:

MySQL veritabanı yedekleme dosyaları, bash betiği ve cron yardımcı programı kullanılarak otomatik olarak oluşturulur.

Çözüm

MySQL kimlik bilgilerini ve yedeklemek istediğiniz veritabanının adını ve dosya adı biçimini sağlayarak bir bash betiği oluşturun. Yedek SQL dosyasını oluşturmak için mysqldump komutunu, sıkıştırmak için gzip'i kullanın ve betiği çalıştırın. Yedekleme işlemini otomatik hale getirmek için crontab'ı kullanın. Bu gönderi, Bash komut dosyasını kullanarak bir MySQL veritabanının otomatik olarak nasıl yedekleneceğini ele aldı.