T086学习网 | 站长学院 | 技术文档 | 成语 | 歇后语 | 帝国时代 | 代码收藏 | IP地址查询 | 生活百科 | 生日密码 | CSS压缩 | 用户评论 | 欣欣百宝箱

CentOS+Nginx+PHP+Mysql+安全指南全环境搭建笔记(4)

【 moon-blog.cn作者:LOVEMOON 更新时间:2009-08-06 | 字体:
[导读]CentOS+Nginx+PHP+Mysql+安全指南全环境搭建笔记(4)- 数据自动备份主要内容:[安装NCFTP软件以支持自动上传数据库备份][数据库每日备份][数据库即时备份**按需操作**][日志备份][安装NCFTP软件以支持自动上传数据库备...


CentOS+Nginx+PHP+Mysql+安全指南全环境搭建笔记(4)
- 数据自动备份
主要内容:
[安装NCFTP软件以支持自动上传数据库备份]
[数据库每日备份]
[数据库即时备份**按需操作**]
[日志备份]
[安装NCFTP软件以支持自动上传数据库备份]
# cd /software
# wget ftp://ftp.ncftp.com/ncftp/ncftp-3.2.2-src.tar.gz
# tar zxvf ncftp-3.2.2-src.tar.gz
# cd ncftp-3.2.2
# ./configure --prefix=/usr/local/webserver/ncftp
# make && make install
[数据库每日备份]
每天4:00,将数据库拷贝至/backup/day后进行压缩,然后上传至FTP服务器上,/backup/day/留有压缩文件一天。
# vi /usr/local/webserver/backupd.sh
↑ 编辑脚本/usr/local/webserver/backupd.sh
写入以下内容:
#!/bin/bash
rm -rf /backup/day/*
cd /backup/day/
cp -rf /usr/local/webserver/mysql/data/(此处为数据库名称)/ /backup/day/wp_db_$(date +%Y%m%d)
sleep 10
echo "ready to tar in 10s ."
tar zcvf `hostname`_wpdata_of_$(date +%Y%m%d).tar.gz wp_db_$(date +%Y%m%d)
sleep 10
echo "ready to upload in 10s ."
/usr/local/webserver/ncftp/bin/ncftpput -u backupd -p (FTP密码) (FTP服务器地址) / /backup/day/`hostname`_wpdata_of_$(date +%Y%m%d).tar.gz
sleep 30
echo "upload done ."
rm -f `hostname`_wpdata_of_$(date +%Y%m%d).tar.gz
sleep 5
rm -rf wp_db_$(date +%Y%m%d)
clear
保存,并设置计划任务:
# crontab -e
增加一行:
00 4 * * * /bin/bash /usr/local/webserver/backupd.sh
↑ 每天凌晨4点将自动备份数据库并上传。
[数据库即时备份**按需操作**]
每隔6小时,将数据库拷贝至/backup/hour目录进行备份,然后将压缩文件上传至FTP服务器上,/backup/hour/留有压缩文件一天。
# vi /usr/local/webserver/backuph.sh
↑ 编辑脚本/usr/local/webserver/backuph.sh
写入以下内容::
#!/bin/bash
rm -rf /backup/hour/*
cd /backup/hour/
cp -rf /usr/local/webserver/mysql/data/(数据库名称)/ /backup/hour/wp_db_$(date +%Y%m%d%H)
sleep 10
echo "ready to tar in 10s ."
tar zcvf `hostname`_wpdata_of_$(date +%Y%m%d%H).tar.gz wp_db_$(date +%Y%m%d%H)
sleep 10
echo "ready to upload in 10s ."
/usr/local/webserver/ncftp/bin/ncftpput -u backuph -p (FTP密码) (FTP服务器地址) / /backup/hour/`hostname`_wpdata_of_$(date +%Y%m%d%H).tar.gz
sleep 30
echo "upload done ."
rm -f `hostname`_wpdata_of_$(date +%Y%m%d%H).tar.gz
sleep 5
rm -rf wp_db_$(date +%Y%m%d%H)
clear
保存,并设置计划任务:
# crontab -e
增加一行:
0 */6 * * * /bin/bash /usr/local/webserver/backuph.sh
↑ 每6小时将自动备份数据库并上传一次。
[日志备份]
每天02:00,将/logs/下前一天的日志,进行压缩,然后上传至FTP服务器。
# vi /usr/local/webserver/logs.sh
↑ 编辑脚本/usr/local/webserver/logs.sh
写入以下内容::
#!/bin/bash
cd /logs/
mkdir logs_of_$(date -d "yesterday" +"%Y%m%d")
cp $(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/access_$(date -d "yesterday" +"%Y%m%d").log /logs/logs_of_$(date -d "yesterday" +"%Y%m%d")
cp $(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/nginx_error_$(date -d "yesterday" +"%Y%m%d").log /logs/logs_of_$(date -d "yesterday" +"%Y%m%d")
sleep 10
echo "ready to tar in 10s ."
tar zcvf `hostname`_logs_of_$(date -d "yesterday" +"%Y%m%d").tar.gz logs_of_$(date -d "yesterday" +"%Y%m%d")
sleep 10
echo "ready to upload in 10s ."
/usr/local/webserver/ncftp/bin/ncftpput -u logs -p (FTP密码) (FTP服务器地址) / /logs/`hostname`_logs_of_$(date -d "yesterday" +"%Y%m%d").tar.gz
sleep 30
echo "upload done ."
rm -f `hostname`_logs_of_$(date -d "yesterday" +"%Y%m%d").tar.gz
sleep 5
rm -rf logs_of_$(date -d "yesterday" +"%Y%m%d")
clear
保存,并设置计划任务::
# crontab -e
增加一行:
00 2 * * * /bin/bash /usr/local/webserver/logs.sh
↑ 每天凌晨2点将自动备份日志并上传。


本文来源于月阁 - THE BLOG OF LOVEMOON http://moon-blog.cn , 原文地址: http://moon-blog.cn/centos_nginx_php_mysql_%e5%ae%89%e5%85%a8%e6%8c%87%e5%8d%97%e5%85%a8%e7%8e%af%e5%a2%83%e6%90%ad%e5%bb%ba%e7%ac%94%e8%ae%b0_4/

  • 转载请注明来源:IT学习网 网址:http://www.t086.com/ 向您的朋友推荐此文章
  • 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系我们,我们会尽快予以更正。
更多
留言建议ASP探针PHP探针站长Enjoy的Blog
© 2017 T086学习网 - T086.com(原itlearner.com)
RunTime:7.41ms QueryTime:7