centos定时备份web工程和sql文件并上传到ftp
2014-01-02 20:36
531 查看
参考 http://www.levil.cn/post/28/ ,对这篇博客的命令做了几处细微修改,执行成功
下面这个命令保存为backup.sh文件,web工程在/opt/tomcat7/webapps下,projectname是工程名,改成自己的, 数据库mysql安装在/usr/local/mysql下, 用户名root,密码mysqlpassword,数据库mysqldatabase,导出的数据库名字为backup.sql . 今天是2013年1月2日, web工程打包形如web_130102.tar.gz, mysql数据库文件打包为sql_120102.sql.
打包完成复制到/opt/backup文件下,并通过ftp上传到服务器,在这里,服务器ip为ftpip,端口为ftpport,用户名为ftpuser,密码ftppass,
#!/bin/bash
cd /opt/tomcat7/webapps
WebBakName=web_$(date +%y%m%d).tar.gz
tar zcvf $WebBakName projectname
SqlBakName=sql_$(date +%y%m%d).tar.gz
/usr/local/mysql/bin/mysqldump -u root --password=mysqlpassword mysqldatabase >backup.sql
tar zcvf $SqlBakName backup.sql
cp $SqlBakName /opt/backup/
cp $WebBakName /opt/backup/
ftp -i -n ftpip ftpport << EOF
user ftpuser ftppass
binary
hash
put $WebBakName
put $SqlBakName
quit
EOF
rm -f backup.sql $WebBakName $SqlBakName
接着输入chmod +x backup.sh给脚本添加执行权限,再输入:crontab -e编辑任务自动开始时间,比如输入:
00 05 * * 1 /home/backup.sh 就代表每周1的上午5点整执行该自动备份操作。
crontab命令其实很简单,第一位为分,第二位为小时,第三位是天,第四位为月份,第五位为星期, 用过java里面quartz框架就会觉得它很简单。不太清楚的话可以百度一下。
下面这个命令保存为backup.sh文件,web工程在/opt/tomcat7/webapps下,projectname是工程名,改成自己的, 数据库mysql安装在/usr/local/mysql下, 用户名root,密码mysqlpassword,数据库mysqldatabase,导出的数据库名字为backup.sql . 今天是2013年1月2日, web工程打包形如web_130102.tar.gz, mysql数据库文件打包为sql_120102.sql.
打包完成复制到/opt/backup文件下,并通过ftp上传到服务器,在这里,服务器ip为ftpip,端口为ftpport,用户名为ftpuser,密码ftppass,
#!/bin/bash
cd /opt/tomcat7/webapps
WebBakName=web_$(date +%y%m%d).tar.gz
tar zcvf $WebBakName projectname
SqlBakName=sql_$(date +%y%m%d).tar.gz
/usr/local/mysql/bin/mysqldump -u root --password=mysqlpassword mysqldatabase >backup.sql
tar zcvf $SqlBakName backup.sql
cp $SqlBakName /opt/backup/
cp $WebBakName /opt/backup/
ftp -i -n ftpip ftpport << EOF
user ftpuser ftppass
binary
hash
put $WebBakName
put $SqlBakName
quit
EOF
rm -f backup.sql $WebBakName $SqlBakName
接着输入chmod +x backup.sh给脚本添加执行权限,再输入:crontab -e编辑任务自动开始时间,比如输入:
00 05 * * 1 /home/backup.sh 就代表每周1的上午5点整执行该自动备份操作。
crontab命令其实很简单,第一位为分,第二位为小时,第三位是天,第四位为月份,第五位为星期, 用过java里面quartz框架就会觉得它很简单。不太清楚的话可以百度一下。
相关文章推荐
- CentOS中使用Shell脚本实现每天自动备份网站文件和数据库并上传到FTP中
- CentOS中使用Shell脚本实现每天自动备份网站文件和数据库并上传到FTP中
- java定时备份mysql,定时ftp上传,下载,删除,重命名,文件(改)
- centos定时备份远程FTP文件
- ftp/sftp定时自动上传文件脚本(CentOS)
- CentOS中使用Shell脚本实现每天自动备份网站文件和数据库并上传到FTP中(转)
- 使用Quartz 定时生成话单、把话单上传FTP、把话单移动到备份目录
- 在ARM板上定时ftp上传文件_1
- eweb使用WINDOWS的“备份”工具对网站内容自动备份editor for php任意文件上传漏洞
- asp.net使用FtpWebRequest向ftp上传文件报错 基础连接已经关闭: 服务器提交了协议冲突
- 使用FtpWebRequest 类操作(上传、下载和删除)FTP上的XML文件
- 批处理向FTP上传指定属性的文件 批处理增量备份的例子
- 通过FTP服务端来实现匿名用户和基本用户的访问,可以实现文件上传和下载。通过web网站来浏览内容
- 使用Quartz 定时生成话单、把话单上传FTP、把话单移动到备份目录
- VC实现FTP定时上传文件的实现
- 在ARM板上定时ftp上传文件_1
- SQL定时自动备份,并将备份文件加密压缩并自动下载的实现
- asp.net web实现ftp上传代码 (解决大文件上传问题)
- linux svn定时备份文件 + 文件上传
- SQL定时自动备份,并将备份文件加密压缩并自动下载的实现