本篇內(nèi)容主要講解“Linux網(wǎng)站及數(shù)據(jù)庫自動本地備份并FTP上傳怎么實現(xiàn)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Linux網(wǎng)站及數(shù)據(jù)庫自動本地備份并FTP上傳怎么實現(xiàn)”吧!
準備工作:
需要提前在vps安裝好lftp,lftp功能上比較強大,centos直接執(zhí)行:yum install lftp,debian執(zhí)行:apt-get install lftp 。
需要在vps上創(chuàng)建/home/backup/ 目錄,在ftp上創(chuàng)建backup目錄。
如果vps上數(shù)據(jù)庫不多的話使用godaddy的免費空間就可以(10gb空間,300gb流量),只要注冊個域名就免費送。
下面將備份腳本進行部分注釋:
復制代碼 代碼如下:
#!/bin/bash
#funciont: backup website and mysql database
#author: licess
#website: http://lnmp.org
#important!!!please setting the following values!
######~set directory you want to backup~######將下面的目錄修改成自己要備份的目錄,一般按我的都是在/home/wwwroot/下面所有直接寫了需要備份的目錄??梢岳^續(xù)再加:backup_dir5=你的目錄 ,backup_dir后面的數(shù)字依次遞增。如果不足4個,直接刪除不需要的就可以,同時修改下面tar zcf 部分。
backup_dir1=vpser.net
backup_dir2=lnmp.org
backup_dir3=licess.org
backup_dir4=jungehost.com
######~set mysql username and password~######設置mysql的用戶名和密碼,好是root,其他用戶可能因為權限問題無法導出部分數(shù)據(jù)庫。
mysql_username=root
mysql_password=yourmysqlrootpassword
######~set mysql database you want to backup~######設置要部分的數(shù)據(jù)庫,可以繼續(xù)再加:backup_database_name5=數(shù)據(jù)庫名,backup_database_name后面的數(shù)字依次遞增。
backup_database_name1=vpser
backup_database_name2=licess
backup_database_name3=junge
backup_database_name4=vpserorg
######~set ftp information~######設置用來存放備份數(shù)據(jù)的ftp信息
ftp_hostname=184.168.192.43 //ftp服務器的ip或者域名
ftp_username=vpsernet //ftp服務器用戶名
ftp_password=yourftppassword //ftp服務器用戶對應的密碼
ftp_backupdir=backup //備份到ftp上的目錄,需要提前創(chuàng)建好。
#values setting end!
todaywwwbackup=www-*-$(date +"%y%m%d").tar.gz
todaydbbackup=db-*-$(date +"%y%m%d").sql
oldwwwbackup=www-*-$(date -d -3day +"%y%m%d").tar.gz
olddbbackup=db-*-$(date -d -3day +"%y%m%d").sql
tar zcf /home/backup/www-$backup_dir1-$(date +"%y%m%d").tar.gz -c /home/wwwroot/ $backup_dir1 --exclude=soft
tar zcf /home/backup/www-$backup_dir2-$(date +"%y%m%d").tar.gz -c /home/wwwroot/ $backup_dir2
tar zcf /home/backup/www-$backup_dir3-$(date +"%y%m%d").tar.gz -c /home/wwwroot/ $backup_dir3 --exclude=test
tar zcf /home/backup/www-$backup_dir4-$(date +"%y%m%d").tar.gz -c /home/wwwroot/ $backup_dir4
###上面為備份網(wǎng)站文件數(shù)據(jù),因為我的網(wǎng)站比較零散,而且網(wǎng)站目錄下面有些目錄屬于臨時目錄并不需要備份,所以可以在上面加上--exclude=不備份的目錄。如果在前面加了backup_dir5=yourdir,則再加tar zcf /home/backup/www-$backup_dir5-$(date +"%y%m%d").tar.gz -c
/home/wwwroot/ $backup_dir5 。如果多余則刪除多余行。
/usr/local/mysql/bin/mysqldump -u$mysql_username -p$mysql_password $backup_database_name1 > /home/backup/db-$backup_database_name1-$(date +"%y%m%d").sql
/usr/local/mysql/bin/mysqldump -u$mysql_username -p$mysql_password $backup_database_name2 > /home/backup/db-$backup_database_name2-$(date +"%y%m%d").sql
/usr/local/mysql/bin/mysqldump -u$mysql_username -p$mysql_password $backup_database_name3 > /home/backup/db-$backup_database_name3-$(date +"%y%m%d").sql
/usr/local/mysql/bin/mysqldump -u$mysql_username -p$mysql_password $backup_database_name4 > /home/backup/db-$backup_database_name4-$(date +"%y%m%d").sql
###上面為備份mysql數(shù)據(jù)庫,如果在前面加了backup_database_name5=yourdatabasename,則再加/usr/local/mysql/bin/mysqldump -u$mysql_username -p$mysql_password $backup_database_name5 > /home/backup/db-$backup_database_name5-$(date +"%y%m%d").sql 。如果多余則刪除多余行。
rm $oldwwwbackup
rm $olddbbackup
###刪除3天前的備份###
cd /home/backup/
###下面為自動上傳部分,不得不說lftp很強大,拋棄ftp吧####
lftp $ftp_hostname -u $ftp_username,$ftp_password << eof
cd $ftp_backupdir
mrm $oldwwwbackup
mrm $olddbbackup
mput $todaywwwbackup
mput $todaydbbackup
bye
eof
到此,相信大家對“Linux網(wǎng)站及數(shù)據(jù)庫自動本地備份并FTP上傳怎么實現(xiàn)”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)建站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!
分享文章:Linux網(wǎng)站及數(shù)據(jù)庫自動本地備份并FTP上傳怎么實現(xiàn)-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://sd-ha.com/article38/deippp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、外貿(mào)建站、網(wǎng)站策劃、定制網(wǎng)站、ChatGPT、云服務器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容