关于Linux/Unix数据自动备份工具

Posted sha1234

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Linux/Unix数据自动备份工具相关的知识,希望对你有一定的参考价值。

     我们在编写程序的时候经常会需要对数据进行备份,那么就需要使用到自动备份工具,那么你对Linux/Unix数据自动备份工具了解有多少呢?
下面我们就一起去看看关于Linux/Unix数据自动备份工具的内容。
  primabackup.sh 说明文档
  版本:2.0.1
  0. 版本更新
  * 2006-11-23 SWsoft.com.cn v2.0.2
  - [fix] 修复resin路径
  * 2005-03-28 ValueOf.com v2.0.1
  - [fix] 备份resin和tomcat的配置
  - [fix] 修复配置备份子目录的位置
  1. 概述
  primabackup.sh脚本可用来备份数据。
  2. 安装
  解压:
  tar zxf primabackup.tar.gz
  3. 配置
  要求的设定
  3.1 备份到那个目录
  BACKUP_BASE_DIR="/backup" 备份文件所在的根目录
  3.2 备份哪些数据
  WEB=1 备份web
  EMAIL=1 备份email
  DNS=1 备份dns
  mysql=1 备份mysql
  CONTROL=1 备份主控界面目录
  如果不需要备份某个功能,则将其改成0
  3.3 保留多少份旧的备份?
  即除了当前最新的这个备份之外,还保留几个备份,最少为0个,默认为1
  如果设为0,则只保留一个备份,每次备份的时候都会把以前的备份删除
  max_old_backup=1
  4. 备份的过程
  首先根据设置,决定要备份的数据和配置,然后创建
  备份根目录下的以日期时间为名字的目录,在这个目录的data子目录下备份数据的tar包
  在conf子目录下备份配置文件和目录。
  5. 数据位置
  web数据的位置,默认/www/users,程序会自动到prima.conf里面找home_base配置,如果找到则用更改之后的配置
  mail数据的位置,默认/var/vmail,程序会自动到prima.conf里面找mail_space_base配置,如果找到则用更改之后的配置
  dns数据的位置,默认/var/named,程序会自动到prima.conf里面找zonefile_base配置,如果找到则用更改之后的配置
  mysql数据的位置,linux默认/var/lib/mysql,FreeBSD默认/var/db/mysql
  如果prima.conf中打开了网站生成、计数器应用,则会备份相应的数据目录。
  程序根据prima.conf中use_mod_caucho/use_mod_jk来判断是否备份相应的resin和tomcat配置
  named.conf默认/etc/named.conf,程序会自动到prima.conf里面找named_conf配置,如果找到则用更改之后的配置
  如果是主控服务器,请务必打开MYSQL备份。
技术图片
  6. 关于测试模式
  如果将
  #testmode=1
  改成
  testmode=1
  则,只打印要做的事情,不做实际备份。
  7. 备份文件的命名方法
  对于目录的备份。备份文件是目录名.tar.gz,如
  /www/users -> /backup/20040903-140101/data/users.tar.gz
  对于文件的备份,则直接是文件名,如
  /etc/named.conf -> /backup/20040903-140101/conf/named.conf
  完整列表如下:
  /www/prima -> data/prima.tar.gz
  /www/users -> data/users.tar.gz
  /var/vmail -> data/vmail.tar.gz
  /var/named -> data/named.tar.gz
  /var/lib/mysql -> data/mysql.tar.gz
  /www/prima/htdocs/apps/GenComSite/sitepage -> data/sitepage
  /www/prima/htdocs/apps/GenComSite/upload -> data/upload.tar.gz
  /var/Counter -> Counter.tar.gz
  /usr/prima/etc -> conf/etc.tar.gz
  /usr/prima/postfix/conf -> conf/conf.tar.gz
  /etc/named.conf -> conf/named.conf
  /usr/local/resin/conf/host.conf -> conf/host.conf
  /var/tomcat4/conf/server.xml -> conf/server.xml
  /www/prima/htdocs/apps/phpMyAdmin/config.inc.php -> conf/config.inc.php
技术图片
  8. 注意事项
  8.1
  注意:此备份为完整备份,备份目录应有足够空间容纳。
  虽然在备份过程,经过压缩,空间会减小,但建议备份目录至少和数据全部大小相同。
  这样才能保证容纳至少一个完整备份,一般情况下,可以容纳两个完整备份。
  8.2
  在进行备份的时候,对cpu和磁盘的负担是比较重的,建议加上nice以降低程序执行优先级,而且最好在凌晨运行。
  如:
  # nice ./primabackup.sh
  9. 通过cronjob自动周期性备份
  通过修改/etc/crontab,可以将备份设为周期性自动的。
  /etc/crontab中每一条都是一个定期任务,#号开头的除外。
  格式如下:
  分钟 小时 月中的某一天 月 星期几 执行者 命令行
  例如:
  0 2 * * * root /bin/cmd
  即在每天的凌晨2点以root身份执行/bin/cmd命令
  假如要配置备份任务每天2点执行,将输出的消息写到日志文件里,则在/etc/crontab中加入:
  0 2 * * * root nice /root/primabackup/primabackup.sh >> /var/log/primabackup.log
  上面假设备份脚本的位置在/root/primabackup/primabackup.sh
  日志放在/var/log/primabackup.log
  加了nice降低执行优先级。
  如果要每周六2点执行,则:
  0 2 * * 6 root nice /root/primabackup/primabackup.sh >> /var/log/primabackup.log
  (6代表星期六,0 或 7 代表星期天)
  修改/etc/crontab不用重起任何服务。
上文就是关于Linux/Unix数据自动备份工具的内容。

 

以上是关于关于Linux/Unix数据自动备份工具的主要内容,如果未能解决你的问题,请参考以下文章

关于Excel每天自动生成一个备份文件

Oracle数据库RMAN的自动备份脚本简介

15 条实用 Linux/Unix 磁带管理命令

LINUX——关于mysql中较详细的,数据库的主从配置,自动备份以及读写分离的使用

备份校验两不误,MySQL自动备份还原校验设计详解

15 条实用 Linux/Unix 磁带管理命令