linux自动备份文件和数据库并上传到指定的远程FTP中
直接把以下脚本复制到/root/backup.sh
[root@lvtao.net ~]# chmod +x /root/backup.sh
[root@lvtao.net ~]# crontab -e
00 06 * * * /root/backup.sh
[root@lvtao.net ~]# service crond restart
[root@lvtao.net ~]# chkconfig --level 2345 crond on
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | #!/bin/bash #你要修改的地方从这里开始 MYSQL_USER=root #mysql用户名 MYSQL_PASS= #mysql密码 FTP_USER= #ftp用户名 FTP_PASS= #ftp密码 FTP_IP= #ftp地址 FTP_backup= #ftp上存放备份文件的目录,需要先在FTP上面建好 WEB_DATA= /home/wwwroot #本地要备份的网站数据 #你要修改的地方从这里结束 if [ ! -f /usr/bin/ftp ]; then yum install ftp -y fi if [ ! -d /home/backup ]; then mkdir /home/backup fi #定义数据库的名字和旧数据库的名字 DataBakName=Data_$( date + "%Y%m%d" ). tar .gz WebBakName=Web_$( date +%Y%m%d). tar .gz OldData=Data_$( date -d -5day + "%Y%m%d" ). tar .gz OldWeb=Web_$( date -d -5day + "%Y%m%d" ). tar .gz #删除本地3天前的数据 rm -rf /home/backup/Data_ $( date -d -3day + "%Y%m%d" ). tar .gz /home/backup/Web_ $( date -d -3day + "%Y%m%d" ). tar .gz cd /home/backup #导出数据库,一个数据库一个压缩文件 for db in ` /usr/local/mysql/bin/mysql -u$MYSQL_USER -p$MYSQL_PASS -B -N -e 'SHOW DATABASES' | xargs `; do ( /usr/local/mysql/bin/mysqldump -u$MYSQL_USER -p$MYSQL_PASS ${db} -q --skip-lock-tables | gzip -9 - > ${db}.sql.gz) done #压缩数据库文件为一个文件 tar zcf /home/backup/ $DataBakName /home/backup/ *.sql.gz rm -rf /home/backup/ *.sql.gz #压缩网站数据 tar zcf /home/backup/ $WebBakName $WEB_DATA #上传到FTP空间,删除FTP空间5天前的数据 ftp - v -n $FTP_IP << END user $FTP_USER $FTP_PASS type binary cd $FTP_backup delete $OldData delete $OldWeb put $DataBakName put $WebBakName bye END |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库