Опис
Цронтаб секције
Вултр нуди аутоматску резервну копију као опцију за било који ВПС Перформанце Сериес. Овај чланак пружа, поред ове функције, опцију за аутоматско креирање дневних резервних копија базе података на серверу, као и њихово слање преко ФТП-а на ваш резервни сервер или чак на хостове датотека.
Преглед
- Аутоматске резервне копије раде свакодневно. Време када се направи резервна копија се може конфигурисати.
- Многи хостови датотека нуде пренос датотека преко ФТП-а, тако да можете аутоматски послати своју базу података на свој лични налог.
- Шаље е-пошту након што се резервна копија заврши.
Опис
Прво креирајте и промените /backupsдиректоријум.
mkdir /backups
cd /backups
Затим, користећи nanoили свој омиљени уређивач, креирајте датотеку скрипте:
nano backupdb.sh
Сада копирајте и налепите ову скрипту и уредите променљиве на врху према вашим подешавањима:
#!/bin/bash
############### Infos - Edit them accordingly ########################
DATE=`date +%Y-%m-%d_%H%M`
LOCAL_BACKUP_DIR="/backups"
DB_NAME="database_name"
DB_USER="root"
DB_PASSWORD="root_password"
FTP_SERVER="111.111.111.111"
FTP_USERNAME="ftp-user"
FTP_PASSWORD="ftp-pass"
FTP_UPLOAD_DIR="/upload"
LOG_FILE=/backups/backup-DATE.log
############### Local Backup ########################
mysqldump -u $DB_USER -p$DB_PASSWORD $DB_NAME | gzip > $LOCAL_BACKUP_DIR/$DATE-$DB_NAME.sql.gz
############### UPLOAD to FTP Server ################
ftp -nv $FTP_SERVER << EndFTP
user "$FTP_USERNAME" "$FTP_PASSWORD"
binary
cd $FTP_UPLOAD_DIR
lcd $LOCAL_BACKUP_DIR
put "$DATE-$DB_NAME.sql.gz"
bye
EndFTP
############### Check and save log, also send an email ################
if test $? = 0
then
echo "Database Successfully Uploaded to the Ftp Server!"
echo -e "Database Successfully created and uploaded to the FTP Server!" | mail -s "Backup from $DATE" your_email@email.com
else
echo "Error in database Upload to Ftp Server" > $LOG_FILE
fi
Након што завршите са уређивањем скрипте и сачувате датотеку, датотеку чинимо извршном применом следеће команде:
chmod +x backupdb.sh
Можете га тестирати сада тако што ћете укуцати у терминал.
/backups/backupdb.sh
... и након што заврши са извршавањем, откуцајте ls -aда видите да ли је направљена резервна копија базе података. Такође потврдите да ли је послато на ваш ФТП сервер.
Ако је све до сада функционисало добро, можемо да га покренемо свакодневно користећи Цронтаб.
Цронтаб секције
Можете да уредите свој цронтаб следећом командом:
crontab -e
Ово ће приказати уређивач текста у који можете да унесете свој распоред са сваким послом у новом реду.
Сваки од одељака је одвојен размаком, а последњи одељак има један или више размака. Овако је постављен црон посао:
минут (0-59), сат (0-23, 0 = поноћ), дан (1-31), месец (1-12), дан у недељи (0-6, 0 = недеља), команда
Дакле, у уређивачу откуцајте или налепите овај ред:
30 02 * * * /backups/backupdb.sh
Горњи пример ће се покретати /backups/backupdb.shу 02:30 ујутро сваког дана у месецу. Наравно, можете променити време како желите.
Сада само сачувајте и затворите датотеку. У заказано време, резервна копија ће бити извршена.