Plesk Panel Mysql Backup Script
Bir arkadaşım Plesk panel kullanıyor.
Onun için yazdığım MySQL Backup scriptini paylaşıyorum.
Script her saat başında MySQL yedeği alarak ilgili yedek dosyasını ftp sunucuya gönderiyor.
Edit: 30-12-2020
Bu scripti kullanırken farkettik.
Centos7 ile ftp komutu kurulu gelmiyor.
öncelikle ftp paketini kuralım.
yum -y install ftp
şimdi aşağıda verilen scripti hazır hale getirelim ve aktif edelim
nano /root/yedekle.sh
aşağıda verilen kodu yapıştırın ve ctrl+x basıp kaydedin.
chmod 755 /root/yedekle.sh
scriptin her saat başı çalışabilmesi için cron girdisi eklemeliyiz.
Plesk panel ile ilgili menüden de yapabilirsiniz.
Cron girdisi.
crontab -e
açılan dosyaya bu kodu yapıştırın.
00 * * * * /root/yedekle.sh
kaydedip çıkın.
Scrip her saat başında yedek işlemini yapıp ftp sunucusuna
Backup dosyasını gönderecektir.
KOD
#!/bin/bash
# caylakpenguen - 20 Aralik 2020 - 19:14
# edit = Prs 14 Oca 2021 21:46:15 +03
# Plesk-Panel icin Mysql db yedekleme servisi :)
#
# her saat basi yedek almak icin.
# Ornek Cron girdisi
# 00 * * * * /root/yedekle.sh
#
#
DATE=`date "+%Y%m%d-%H%M%S"`
OPSIYON="--single-transaction --default-character-set=utf8mb4"
MYSQL_PWD=`cat /etc/psa/.psa.shadow`
DUMPCMD="mysqldump -uadmin"
CMD="$MYSQL_PWD $DUMPCMD $OPSIYON"
#Yedek-Al
$CMD FORUMDB | gzip -9 > /root/FORUMDB.sql.gz
$CMD RESIMDB | gzip -9 > /root/RESIMDB.sql.gz
$CMD DOSYADB | gzip -9 > /root/DOSYADB.sql.gz
#Tar arsivi olustur.
cd /root
sleep 1
tar -cpf backup.tar FORUMDB.sql.gz \
RESIMDB.sql.gz \
DOSYADB.sql.gz
#ftp bilgileri girilecek.
ftphost='10.20.30.40'
user='caylak'
pass='P4r0l+a5evD4'
#Ftp Gonderimi.
ftp -n -v $ftphost << EOT
ascii
user $user $pass
prompt
#harici disk dizinine gir.
cd Backup/xenforo
# dosyayi yolla tarihli olarak.
put backup.tar $DATE-backup.tar
#
bye
EOT
#-------
#bittiiii :)
Faydalı olması dileğiyle.
Soru ve yorumlarınızı beklerim.