cPanel İçin Zamanlanmış Görev Kullanarak Otomatik Veritabanı Yedeği Alıp FTP’ye Aktarmak
Merhabalar, takvimler 12 ekim 2022 gösterirken halen internette her aradığımızı bulamamanın yanı sıra sanal sunucu ve fiziksel sunucu kullanan müşterilerimiz için basit ama etkili bir bash script yazdık. Hayati önem arz eden bir konu olduğunu düşünmekteyiz. Belki sunucularınızı yedekleyemiyor olabilirsiniz ancak bu basit bash dosyası ile veritabanlarınızı en azından daha güvenilir bir şekilde daha güvenli bir alana yedekleyebilirsiniz. Daha önce paylaşmış olduğumuz cPanel – Zamanlanmış Görevleri Kullanarak Veritabanı Yedeği Almak makalemizde en çok sorulan sorulardan birisi olmuştur.
Öncelikle bu bash dosyası cpanel / whm sanal sunucu yada fiziksel sunucu kullananlar içindir.
#!/bin/bash
backup_path=”/root/veritabaniyedekleri”
create_backup() {
umask 177
FILE=”dosyaismi_$(date +%Y-%m-%d_%H.%M).sql.gz”
mysqldump –single-transaction –quick –lock-tables=false veritabaniadi | gzip –best > $FILE
echo ‘Backup Alindi’
}
clean_backup() {
rm -f $backup_path/$FILE
echo ‘Backup Silindi’
}
##################################
# Bu alani duzenleyebilirsiniz #
##################################
# FTP Login bilgileri
USERNAME=”FTPKULLANICIADI”
PASSWORD=”FTPSIFRESI”
SERVER=”FTPIPADRESI”
PORT=”21″
#Uzak dizin yolu
REMOTEDIR=”./”
#Transfer tipi
#1=FTP
#2=SFTP
TYPE=1
##############################
# Bu alani duzenlemeyin #
##############################
d=$(date –iso)
cd $backup_path
create_backup
if [ $TYPE -eq 1 ]
then
ftp -n -i $SERVER <<EOF
user $USERNAME $PASSWORD
binary
cd $REMOTEDIR
mput $FILE
quit
EOF
elif [ $TYPE -eq 2 ]
then
rsync –rsh=”sshpass -p $PASSWORD ssh -p $PORT -o StrictHostKeyChecking=no -l $USERNAME” $backup_path/$FILE $SERVER:$REMOTEDIR
else
echo ‘Lutfen Transfer Tipini Seciniz’
fi
echo ‘Backup Yuklendi’
clean_backup
#END
Yapacağınız değişikler aşağıdaki gibidir.
FTPKULLANICIADI
FTPSIFRESI
FTPIPADRESI
dosyaismi_
veritabaniadi