,如何实现Informix的ontape零级备份自动完成?

用户投稿 159 0

关于“informix_php”的问题,小编就整理了【1】个相关介绍“informix_php”的解答:

如何实现Informix的ontape零级备份自动完成?

  ontape是informix数据库的简单易用的备份工具,但是它必须交互进行,对数据库的日常维护有一定的限制,比如,我们想在晚上进行备份,而不是在白天工作的时间。  下面我就简单示例,实现ontape的自动备份,这样我们就可以编写一个脚本,让操作系统在系统不忙时自动调用。  假设:  1 ) $ONCONFIG 中参数 TAPEDEV已设置  TAPEDEV /Backup/archive0 # Tape device path  TAPEBLK 16 # Tape block size (Kbytes)  TAPESIZE 2000000 # Maximum amount of data to put on tape (Kbytes)  2) 备份数据的存放目录 /Backup ;  3) 备份过程产生的日志文件放在/opt/informix/archive目录下;  4) ftp.cmd 文件放在 /opt/informix/archive目录下;  #----------Autobackup.sh Begin----------  #  #autobackup.sh  #  #加载数据库环境  . /opt/informix/setenv  #设置备份日志文件  LOGFILE=/opt/informix/archive/archive.log  #取得当前系统日期  DATE=`date +%Y%m%d`  echo "---------- INFORMIX SYSTEM BACKUP(`date +%c`) ----------" >>$LOGFILE 2>&1  #生成一个备份的目标文件  touch /Backup/archive0 >>$LOGFILE 2>&1  chown informix:informix /Backup/archive0 >>$LOGFILE 2>&1  chmod 660 /Backup/archive0 >>$LOGFILE 2>&1  #开始零级备份  echo ` ` | ontape -s -L 0 >>$LOGFILE 2>&1  #将备份完成后的文件加上时间戳  mv -f /Backup/archive0 /Backup/archive.$DATE >>$LOGFILE 2>&1  #压缩备份  compress -f /Backup/archive.$DATE >>$LOGFILE 2>&1  #将备份文件传输到其它机器上  cp -f /Backup/archive.$DATE.Z /Backup/ftp >>$LOGFILE 2>&1  ftp -n >$LOGFILE 2>&1  #删除5天前的备份  COUNTS=`ls /Backup|sort|wc -l`  echo "There is $COUNTS files in /Backup..." >>$LOGFILE 2>&1  if [ $COUNTS -ge 7 ] ; then  echo "An oldest file will be delete ,please wait..." >>$LOGFILE 2>&1  OLDFILE=`ls /Backup|sort|head -1` >>$LOGFILE 2>&1  cd /Backup  rm -f $OLDFILE >>$LOGFILE 2>&1  echo "Delete file completed ,$OLDFILE was deleted." >>$LOGFILE 2>&1  else  echo "There is no more then 6 file ,nothing to do..." >>$LOGFILE 2>&1  fi  #释放数据库无用内存  onmode -F  #------------autobackup.sh End-----------  以上脚本可以使用操作系统的crontab命令,指定时间,自动运行,不用人工干预。  另外附上使用ftp命令的自动传输教本。  #------------ftp.cmd begin---------------------------  open 9.185.43.62  User backup backup123  cd /RemoteBackup  bin  bin  bin  bin  put /Backup/ftp/* /RemoteBackup/archive0  Bye  #--------------------------ftp.cmd end ----------------------  在远端系统上同样可以使用crontab命令来处理传输过去的文件。  大家可以自行修改以上脚本,使之适用于自己的环境。

到此,以上就是小编对于“informix_php”的问题就介绍到这了,希望介绍关于“informix_php”的【1】点解答对大家有用。

抱歉,评论功能暂时关闭!